git是現(xiàn)在最流行的版本控制工具。與CVS、Subversion一類的集中式版本控制工具不同,它采用了分布式版本庫的作法,不需要服務(wù)器端軟件,就可以運(yùn)作版本控制,使得源代碼的發(fā)布和交流極其方便。git的速度很快,git最為出色的是它的合并追蹤(mergetracing)能力。
bash$ git clone https://github.com/user/repo.git [DirName]或者$ git clone git@github.com:user/repo.git [DirName]
其中,user為用戶名,repo為需要克隆的庫名,DirName為可選,默認(rèn)值為庫的名稱repo
bash$ git init
bash$ git status
bash$ git diff
bash$ git add .
bash$ git add -p <file>
bash$ git commit -a
bash$ git commit
bash$ git commit --amend
bash$ git log
bash$ git log -p <file>
bash$ git blame <file>
bash$ git branch -av
bash$ git checkout <branch>
bash$ git branch <new-branch>
bash$ git checkout --orphan <branch>
bash$ git checkout --track <remote/branch>
bash$ git branch -d <branch>
bash$ git tag <tag-name>
bash$ git remote -v
bash$ git remote show <remote>
bash$ git remote add <shortname> <url>
bash$ git fetch <remote>
bash$ git pull <remote> <branch>
bash$ git push <remote> <branch>
bash$ git branch -dr <remote/branch>
bash$ git push --tags
bash$ git push <remote> <tag>
bash$ git merge <branch>
把當(dāng)前HEAD變到分支上
$ git rebase <branch>
不要對(duì)已經(jīng)push的commits進(jìn)行rebase
放棄rebase
$ git rebase --abort
解決沖突之后,仍rebase
$ git rebase --continue
使用自定義的merge工具來解決沖突
$ git mergetool
使用自定義的編輯器來手動(dòng)解決沖突并在解決沖突之后標(biāo)記為已解決
$ git add <resolved-file>$ git rm <resolved-file>
bash$ git reset --hard HEAD
bash$ git checkout HEAD <file>
bash$ git revert <commit>
bash$ git reset --hard <commit>
bash$ git reset <commit>
bash$ git reset --keep <commit>
git init [<Project-Name>] #默認(rèn)當(dāng)前目錄,否則新建<Project-Name>這個(gè)目錄git add . #把本地修改加入到暫存區(qū)git commit -m "<commit-message>' #提交本次修改git remote add origin <remote-repo> #添加遠(yuǎn)程庫git push origin <local-branch>:<remote-branch> #push到遠(yuǎn)程
神器:Help命令~
$ git help <command>
若您覺得我的文章對(duì)您有幫助,歡迎點(diǎn)擊上方按鈕對(duì)我打賞
聯(lián)系客服