git是現(xiàn)在最流行的版本控制工具。與CVS、Subversion一類的集中式版本控制工具不同,它采用了分布式版本庫的作法,不需要服務器端軟件,就可以運作版本控制,使得源代碼的發(fā)布和交流極其方便。git的速度很快,git最為出色的是它的合并追蹤(merge
tracing)能力。 創(chuàng)建庫- 克隆一個已存在的庫
bash
$ git clone https://github.com/user/repo.git [DirName]
或者
$ git clone git@github.com:user/repo.git [DirName]
其中,user為用戶名,repo為需要克隆的庫名,DirName為可選,默認值為庫的名稱repo - 新建本地庫
bash
$ git init
本地修改- 查看本地工作目錄下的文件變化
bash
$ git status - 已跟蹤文件(tracked files)的變化
bash
$ git diff - 將本地所有修改加入到下次提交(commit)中:
bash
$ git add . - 把文件中的改變加入到下次commit中:
bash
$ git add -p <file> - 提交跟蹤文件在本地的修改:
bash
$ git commit -a - 提交在工作臺中的修改
bash
$ git commit - 修改最近一次的commit(不要修改已經published的commit)
bash
$ git commit --amend
Commit歷史記錄- 從最新的一次開始,羅列所有提交
bash
$ git log - 查看某一文件的所有commit記錄
bash
$ git log -p <file> - 查看某一文件的修改記錄-Who,When,What
bash
$ git blame <file>
分支與標簽(Branch & Tag)- 列出所以存在的分支
bash
$ git branch -av - 把HEAD移到分支上(轉到分支上)
bash
$ git checkout <branch> - 基于目前的HEAD創(chuàng)建新分支
bash
$ git branch <new-branch> - 創(chuàng)建全新的分支
bash
$ git checkout --orphan <branch> - 創(chuàng)建遠程分支的跟蹤分支
bash
$ git checkout --track <remote/branch> - 刪除本地分支
bash
$ git branch -d <branch> - 給當前的commit打標簽
bash
$ git tag <tag-name>
更新與提交- 列出所有遠程倉庫
bash
$ git remote -v - 查看遠程倉庫的信息
bash
$ git remote show <remote> - 添加名為的新遠程庫
bash
$ git remote add <shortname> <url> - 從遠程庫下載所有修改,但不要加入到HEAD中
bash
$ git fetch <remote> - 下載修改并合并/加入到 HEAD中
bash
$ git pull <remote> <branch> - 把本地修改推送(push)到遠程庫
bash
$ git push <remote> <branch> - 刪除遠程庫上的分支
bash
$ git branch -dr <remote/branch> - push標簽
bash
$ git push --tags - push某一具體標簽
bash
$ git push <remote> <tag>
合并與編輯(merge & Rebase)撤銷Undo- 放棄在工作目錄中的所有本地修改
bash
$ git reset --hard HEAD - 放棄某一文件中的本地修改
bash
$ git checkout HEAD <file> - 回復(revert)某次commit
bash
$ git revert <commit> - 重置HEAD指向某次commit:并放棄之后的所有修改
- …并放棄之后的所有修改
bash
$ git reset --hard <commit> - …并把之后的修改保存到unstaged changes
bash
$ git reset <commit> - …并保留本地沒有commit的修改:
bash
$ git reset --keep <commit>
最基礎git init [<Project-Name>] #默認當前目錄,否則新建<Project-Name>這個目錄
git add . #把本地修改加入到暫存區(qū)
git commit -m "<commit-message>' #提交本次修改
git remote add origin <remote-repo> #添加遠程庫
git push origin <local-branch>:<remote-branch> #push到遠程 最后!神器:Help命令~
若您覺得我的文章對您有幫助,歡迎點擊上方按鈕對我打賞
|