git經常使用命令

ex1 建立版本庫

S1 建立.git目錄,初始化

git init

S2 工做區建立/修改文件——添加到暫存區:

git add <flie>

S3 提交到當前分支(版本庫;HEAD指針):

git commit -m '...'

ex2 查詢命令

1 git statusgit

git status: 文件在 工做區/暫存區/提交後的 狀態

2 git diff指針

git diff <flie>: 單個文件的具體修改內容;

git diff: 工做區與暫存區 內容的具體修改狀況
git diff --staged:暫存區與版本庫  內容狀況
git diff HEAD --<flie>: 工做區與版本庫最新版本的 具體內容區別;
git diff id1 id2: 對比(分支裏)兩個版本的 內容

3 git log日誌

git log(commit id):查看 當前分支的 歷史版本日誌(q退出,下箭頭翻頁)
git reflog:查看 版本回退/前進的 歷史版本日誌
git log --graph --pretty=oneline --abbrev-commit: 查看分支合併圖

ex3 撤銷修改/版本回退

git checkout --<file>: 丟棄在工做區/暫存區 未提交的修改
git reset HEAD <file>: S1 撤銷暫存區的修改——重回工做區中;
                       S2 丟棄工做區的修改,命令見上

版本回退:
git reset --hard HEAD^/commit id: 使工做區文件內容 回退/前進到 id的那次

ex4 分支管理

1 HEAD概念演示,見分支建立演示圖;code

git branch [分支名] :  查看 [建立新] 分支
git checkout 分支名 : 轉換HEAD(當前指向分支)
git checkout -b <name>:建立+切換分支

2 合併/刪除分支開發

git merge <name>: 合併某分支到當前分支(快速合併)
git merge --no-ff -m "xxx" <name>: 普通合併(合併後的歷史有分支)
git branch -d <name>:刪除分支

快速合併過程見下圖:rem

快速合併

普通模式合併過程見下圖:get

普通合併

3 解決衝突:見衝突解決it


ex5 遠程庫

1 添加遠程庫
: S1 登錄GitHub,建立一個新的倉庫;
S2 把一個已有的本地倉庫與之關聯:
S3把本地庫的全部內容 推送到遠程庫上:class

S2 git remote add origin git@...

S3 git push -u origin [分支名]

2 查看遠程庫消息stream

git remote -v

3 克隆遠程庫並開發

git clone git@...

開發:
: 1 建立遠程origin的 dev分支 到本地;
2 把dev分支push到遠程
3 若推送發送衝突時:

S1 git checkout -b dev origin/dev;
S2 git push origin dev;

S3 git branch --set-upstream dev origin/dev
   git pull (origin 分支名)
   手動解決衝突,提交
   git push origin dev
相關文章
相關標籤/搜索