【Git入门之四】操作项目 - JackyStudio - 博客频道 - CSDN.NET
1.查看操作日记
《git log》用于查看操作日记详情。因为Git是分布式的,采用SHA1这样的版本号可有效的防止版本冲突。
- #查看操作日记,底下那串长长的数据就是SHA1?ID,表示当前版本号??
 - $Snbsp;git?log??
 - commit?aea0365712908805bc28540b4db9fd2f15360a8b??
 - Author:?Jacky?<fusijie@vip.qq.com>??
 - Date:???Fri?Sep?27?15:15:48?2013?+0800??
 - ??
 - ????init?AddFiles??
 
2.修改项目内容
- #修改JackyData01内容??
 - $Snbsp;echo?"HelloGit"?>?JackyData01??
 ?
3.查看当前状态
- #查看版本库状态,可以看到红色的JackyData01被修改过??
 - $Snbsp;git?status??
 - #?On?branch?master??
 - #?Changes?not?staged?for?commit:??
 - #???(use?"git?add?<file>..."?to?update?what?will?be?committed)??
 - #???(use?"git?checkout?--?<file>..."?to?discard?changes?in?working?directory)??
 - #??
 - #???????modified:???Jackydata01??
 - #??
 - no?changes?added?to?commit?(use?"git?add"?and/or?"git?commit?-a")??
 
4.提交修改
这里使用《git commit -a -m “提交信息”》可以省掉先放到暂存区的操作,直接提交。
- #直接提交修改??
 - $Snbsp;git?commit?-a?-m?"modify?JackyData01"??
 - [master?cba8800]?modify?JackyData01??
 - ?1?file?changed,?1?insertion(+),?2?deletions(-)??
 
5.查看操作日记
还用《git log》,不过这次我们给它添加一个参数,这样浏览起来会方便很多。
- #单行显示,只显示版本号和备注??
 - $Snbsp;git?log?--pretty=oneline??
 - cba8800f2daaf4075a506b6d763798ea15ba11cc?modify?JackyData01??
 - aea0365712908805bc28540b4db9fd2f15360a8b?init?AddFiles??
 
6.查看不同
《git diff》用于比较上一次提交和当前版本的差异。
- #修改JackyData02的内容为HelloGit??
 - $Snbsp;echo?"HelloGit"?>?JackyData02??
 - ??
 - #使用Git?diff查看差异,可以看到HelloJacky被删除了,而HelloGit被添加了??
 - $Snbsp;git?diff??
 - diff?--git?a/JackyData02?b/JackyData02??
 - index?85d5336..1da19b8?100644??
 - ---?a/JackyData02??
 - +++?b/JackyData02??
 - @@?-1?+1?@@??
 - -HellloJacky??
 - +HelloGit??
 
7.提交修改并打开Git GUI界面
《gitk --all》用于打开Git的GUI界面。
- #提交修改??
 - $Snbsp;git?add?.?&&?git?commit?-m?"modify?JackyData02"??
 - [master?a5f6601]?modify?JackyData02??
 - ?1?file?changed,?1?insertion(+),?1?deletion(-)??
 - ??
 - #打开GUI界面??
 - $Snbsp;gitk?--all??
 ?
8.修改提交信息
使用《git commit --amend》可以修改上次提交的信息。
?
- #重新修改上次提交信息??
 - $Snbsp;git?commit?--amend?-m?"amend?modify?JackyData02"??
 - [master?a25c588]?amend?modify?JackyData02??
 - ?1?file?changed,?1?insertion(+),?1?deletion(-)??
 - ??
 - #最后一次的提交信息被修改??
 - $Snbsp;git?log?--pretty=oneline??
 - a25c58804cb3f4045564fc0ec6a4e6eb4dae7072?amend?modify?JackyData02??
 - cba8800f2daaf4075a506b6d763798ea15ba11cc?modify?JackyData01??
 - aea0365712908805bc28540b4db9fd2f15360a8b?init?AddFiles??
 9.删除项目内容
删除了某一项版本控制下的内容,使用《git add .》无法在索引中删除该文件。
?
?
- #移除JackyData03文件??
 - $Snbsp;rm?JackyData03??
 - ??
 - #使用git?add?.?提示警告,同时调用git?status,发现并没有正常提交??
 - $Snbsp;git?add?.?&&?git?commit?-m?"remove?JackyData03"??
 - warning:?You?ran?‘git?add‘?with?neither?‘-A?(--all)‘?or?‘--ignore-removal‘,??
 - whose?behaviour?will?change?in?Git?2.0?with?respect?to?paths?you?removed.??
 - Paths?like?‘JackyData03‘?that?are??
 - removed?from?your?working?tree?are?ignored?with?this?version?of?Git.??
 - ??
 - *?‘git?add?--ignore-removal?<pathspec>‘,?which?is?the?current?default,??
 - ??ignores?paths?you?removed?from?your?working?tree.??
 - ??
 - *?‘git?add?--all?<pathspec>‘?will?let?you?also?record?the?removals.??
 - ??
 - Run?‘git?status‘?to?check?the?paths?you?removed?from?your?working?tree.??
 - ??
 - #?On?branch?master??
 - #?Changes?not?staged?for?commit:??
 - #???(use?"git?add/rm?<file>..."?to?update?what?will?be?committed)??
 - #???(use?"git?checkout?--?<file>..."?to?discard?changes?in?working?directory)??
 - #??
 - #???????deleted:????JackyData03??
 - #??
 - no?changes?added?to?commit?(use?"git?add"?and/or?"git?commit?-a")??
 
需使用《git commit -a -m “提交信息”》或者《git add -A . git commit -m “提交信息”》才能达到删除的目的。?
?
- #使用git?commit?-a?-m提交删除??
 - $Snbsp;git?commit?-a?-m?"remove?JackyData03"??
 - [master?c5c83cf]?remove?JackyData03??
 - ?1?file?changed,?1?deletion(-)??
 - ?delete?mode?100644?JackyData03
 
?
原文:http://www.cnblogs.com/seven1979/p/4257290.html