看日记学git

《看日记学git》之十六

《看日记学git》系列

《看日记学git》之序 《看日记学git》之一 《看日记学git》之二 《看日记学git》之三

《看日记学git》之四 《看日记学git》之五 《看日记学git》之六 《看日记学git》之七

《看日记学git》之八 《看日记学git》之九(总结) 《看日记学git》之十 《看日记学git》之十一

《看日记学git》之十二 《看日记学git》之十三 《看日记学git》之十四 《看日记学git》之十五

===

本次我们将从一个独立开发者的视角来学习git。

1

独立开发者的最大特点就是他们不需要和其他人来交换补丁,而且只在一个独立的固定的git仓库中工作。

下面这些命令将可以帮助你完成日常工作:

git-show-branch:可以显示你当前所在的分支以及提交记录。

git-log:显示提交日志

git-checkout或者git-branch:用于切换和创建分支

git-add:用于将修改内容加入到index文件中

git-diff和git-status:用于显示开发者所做的修改

git-commit:用于提交当前修改到git仓库。

git-reset和git-checkout:用于撤销某些修改

git-merge:用于合并两个分支

git-rebase:用于维护topic分支(此处我也不太懂,等完成git学习后转过头来会关注此问题)

git-tag:用于标记标签。

2

我们来举一个例子,模拟一下独立开发者使用git的情形。

首先使用一个tarball作为整个项目的初始点。

$ tar -xzvf mypro.tat.gz

$ cd  mypro

$ git-init

$ git add .

$ git commit -m “important of mypro source tree.”

$ git tag v2.43 //给这个commit起了一个简单的名字v2.43

下面我们建立分支并继续开发:

$ git checkout -b alsa-audio //-b用于建立一个新的分支,分支名称为alsa-audio,并且转移到此分支

…(开发/编译/测试)

$ git checkout — curses/ux_audio_oss.c //用于取消对curses/ux_audio_oss.c文件的修改

$ git add curses/ux_audio_alsa.c //如果你在这一阶段的开发过程中增加了新文件,那么你应该用git-add告知git仓库,当然,如果你只是修改或删除,那么使用git-commit -a就可以让git查觉到了。

…(开发/编译/测试)

$ git diff HEAD //查看一下我们即将commit的内容

$ git commit -a -s //提交

…(开发/编译/测试)

$ git reset –soft HEAD^ //回复到上一次commit的代码。–soft选项表示不改动index file和working tree中的内容

…(开发/编译/测试)

$ git diff ORIG_HEAD //look at the changes since the premature commit we took back(此句不太懂)

$ git commit -a -c ORIG_HEAD //重新提交,-c ORIG_HEAD表示使用原有的提交信息

$ git checkout master

$ git merge alsa-audio

$ git log –since=’3 days ago’

$ git log v2.43.. curses/    //查看自从v2.43以来的curses目录下的代码变化信息

===
如果你对git感兴趣,请继续阅读:

《看日记学git》之十七

《看日记学git》之十八(点睛)

《看日记学git》之十九

over~

发表您的评论

请您放心,您的信息会被严格保密。必填项已标识 *