Git 分佈式版本控制系統 基本命令行操作

Git:分佈式版本控制系統 (CVS及SVN都是集中式的版本控制系統)

 參考地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

1.windows下安裝

  $ git config --global user.name "YourName"

  $ git config --global user.email"[email protected]"

 

2.創建版本庫

 

   a. 初始化倉庫:git init

   b. 添加文件到倉庫:(1) git add file : 添加到暫存區 .

                      (2) git commit -m"文檔說明" :提交到分支

                      (3) 有多次修改:第一次修改 -> git add -> 第二次修改 -> git add  git commit

 

3. 查看工作區狀態:git status

 

4. 查看修改內容: git diff HEAD -- file

 

5. 版本回退

     

     a: 回到指定版本:git reset --hard commit_id (HEAD:當前版本 HEAD^:上個版本 HEAD~100)

     b:查看提交歷史:git log

     c: 查看命令歷史:git reflog

     d: 查看文件內容:cat file

 

6.撤銷修改

  

    a:丟棄工作區的修改 :git checkout -- file

    b:把暫存區的修改回退到工作區:git reset HEAD file

    c:提交到版本庫的修改:直接版本回退

 

7.刪除文件

    a: 刪除:rm file

    b:從版本管理器刪除:git rm file

    c: 回覆文件到最新版本:git checkout -- file

8.添加遠程庫

     a:關聯遠程庫:git remote add [email protected]:chenzhijie521143/gitdemo.git

     b:第一次推送master分支的所有內容:git push -u origin master

     c:推送最新修改: git push origin master

9.從遠程庫克隆

     兩種地址

        Git clone  https://github.com/chenzhijie521143/musicplayer.git   /  [email protected]:chenzhijie521143/gitdemo.git

 

10.分支管理

 

   查看分支:git branch

   創建分支:git branch <name>

   切換分支:git checkout <name>

   創建+切換分支:git checkout -b <name>

   合併某分支到當前分支:git merge <name> (快速合併)

   普通合併: git merge --no-ff -m"chenzhijie" chenzhijie

   刪除分支:git branch -d <name>

   強行刪除沒有合併的分支:git branch -D <name>

   查看分支歷史:git log --graph --pretty=oneline --abbrev-commit

  

   bug分支:修復bug時,我們會通過創建新的bug分支進行修復,然後合併,最後刪除;

            git stash(儲存當前工作現場),然後去修復bug,修復後,再git stash pop(git stash apply),回到工作現 場。

  

   多人協作:

         查看遠程庫信息,使用git remote -v;

         本地新建的分支如果不推送到遠程,對其他人就是不可見的;

         從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠程的新提交;

         在本地創建和遠程分支對應的分支,使用git checkout -b branch-nameorigin/branch-name,本地和遠程分支的名稱最好一致;

         建立本地分支和遠程分支的關聯,使用git branch --set-upstream branch-nameorigin/branch-name;

         從遠程抓取分支,使用git pull,如果有衝突,要先處理衝突。

11.標籤:

  

   創建標籤:

   命令git tag <name>用於新建一個標籤,默認爲HEAD,也可以指定一個commit id;

   git tag -a <tagname> -m"blablabla..."可以指定標籤信息;

   git tag -s <tagname> -m"blablabla..."可以用PGP簽名標籤;

   命令git tag可以查看所有標籤。

  

   操作標籤:

   命令git push origin <tagname>可以推送一個本地標籤;

   命令git push origin --tags可以推送全部未推送過的本地標籤;

   命令git tag -d <tagname>可以刪除一個本地標籤;

   命令git push origin :refs/tags/<tagname>可以刪除一個遠程標籤

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章