Git学习笔记(7) -- 独立开发者所用的命令(c)

Posted by Elton's Blog on July 22, 2009


Use a tarball as a starting point for a new repository.

$ tar zxf frotz.tar.gz
$ cd frotz
$ git init
$ git add . //添加所有文件到index
$ git commit -m "import of frotz source tree."
$ git tag v2.43

Create a topic branch and develop.

$ git checkout -b alsa-audio (1)
$ edit/compile/test
$ git checkout -- curses/ux_audio_oss.c (2)
$ git add curses/ux_audio_alsa.c (3)
$ edit/compile/test
$ git diff HEAD (4)
$ git commit -a -s (5)
$ edit/compile/test
$ git reset --soft HEAD^ (6)
$ edit/compile/test
$ git diff ORIG_HEAD (7)
$ git commit -a -c ORIG_HEAD (8)
$ git checkout master (9)
$ git merge alsa-audio (10)
$ git log --since='3 days ago' (11)
$ git log v2.43.. curses/ (12)
  1. create a new topic branch.
  2. revert your botched changes in curses/ux_audio_oss.c.
  3. you need to tell git if you added a new file; removal and modification will be caught if you do git commit -a later.
  4. to see what changes you are committing.
  5. commit everything as you have tested, with your sign-off.
  6. take the last commit back, keeping what is in the working tree.
  7. look at the changes since the premature commit we took back.
  8. redo the commit undone in the previous step, using the message you originally wrote.
  9. switch to the master branch.
  10. merge a topic branch into your master branch.
  11. review commit logs; other forms to limit output can be combined and include --max-count=10 (show 10 commits), --until=2005-12-10, etc.
  12. view only the changes that touch what's in curses/ directory, since v2.43 tag.