多人開發之實用小貼士 Git常用命令總結

2022-07-10 21:21:10 字數 3624 閱讀 7427

1.1  建立乙個空目錄 

$ mkdir learngit

1.2 cd進入空目錄

$ cd learngit

1.3 把這個目錄變成git可以管理的倉庫,git把倉庫建好且告訴你是乙個空的倉庫(empty git repository),當前目錄下會多了乙個.git的目錄,如果沒有看到.git目錄,是因為這個目錄預設是隱藏的,用ls-ah命令就可以看見

$ git init

$ git clone [url]

2.1  顯示當前的git配置 

$ git config --list

2.2 編輯git配置檔案

$ git config -e [--global]

2.3 設定提交**時的使用者資訊

$ git config [--global] user.name "[name]"

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

3.1  新增指定檔案到暫存區 

$ git add [file1] [file2] ...

3.2 新增指定目錄到暫存區,包括子目錄

$ git add [dir]

3.3 新增當前目錄的所有檔案到暫存區

$ git add .

3.4 刪除工作區檔案,並且將這次刪除放入暫存區

$ git rm [file1] [file2] ...

3.5 改名檔案,並且將這個改名放入暫存區

$ git mv [file-original] [file-renamed]

4.1  提交暫存區到倉庫區,-m後面輸入的是本次提交的說明,可以輸入任意內容,最好是有意義的,這樣能從歷史記錄裡方便地找到改動記錄 

$ git commit -m "message"

4.2 提交暫存區的指定檔案到倉庫區

$ git commit [file1] [file2] ... -m "message"

4.3 提交時顯示所有diff資訊

$ git commit -v

5.0  列出所有本地分支,當前分支前面會標乙個*號 

$ git branch

5.1 列出所有遠端分支

$ git branch -r

5.2 列出所有本地分支和遠端分支

$ git branch -a

5.3 新建乙個分支,但依然停留在當前分支

$ git branch [branch]

5.4 新建乙個分支,並切換到該分支

$ git checkout -b [branch]

$ git switch -c [branch]

5.5 切換到指定分支

$ git checkout [branch]

$ git switch [branch]

5.6 切換到上乙個分支

$ git checkout -

5.7 合併指定分支到當前分支

$ git merge [branch]

5.8 刪除分支

$ git branch -d [branch]

5.9 刪除遠端分支

$ git push origin --delete [branch]

$ git branch -dr [branch]

6.0  檢視所有標籤 

$ git tag

6.1 新建乙個tag在當前commit,預設標籤是打在最新提交的commit上

$ git tag [tagname]

6.2 新建乙個tag在指定commit

$ git tag [tagname] commit_id

6.3 建立帶有說明的標籤,用-a指定標籤名,-m指定說明文字

$ git tag -a [tagname] -m "blablabla..."

6.4 檢視tag資訊

$ git show [tagname]

6.5 刪除本地tag

$ git tag -d [tagname]

6.6 刪除遠端tag

$ git push origin :refs/tags/[tagname]

6.7 提交指定tag

$ git push origin [tagname]

6.8 提交所有tag

$ git push origin --tags

6.9 新建乙個分支,指向某個tag

$ git checkout -b [branch] [tagname]

7.1  顯示有變更的檔案 

$ git status

7.2 顯示當前分支的版本歷史

$ git log

7.3 顯示暫存區和工作區的差異

$ git diff

7.4 顯示工作區與當前分支最新commit之間的差異

$ git diff head

7.5 顯示當前分支的最近幾次提交

$ git reflog

8.1  回退到指定版本 

$ git reset --hard commit_id(就是前面的標識)

8.2 重置暫存區與工作區,與上一次commit保持一致

$ git reset --hard

8.3 恢復暫存區的指定檔案到工作區

$ git checkout [file]

8.4 恢復某個commit的指定檔案到暫存區和工作區

$ git checkout [commit] [file]

8.5 恢復暫存區的所有檔案到工作區

$ git checkout .

9.1  顯示所有遠端倉庫 

$ git remote -v

9.2 增加乙個新的遠端倉庫,並命名

$ git remote add [shortname] [url]

9.3 取回遠端倉庫的變化,並與本地分支合併

$ git pull [remote] [branch]

9.4 上傳本地指定分支到遠端倉庫

$ git push [remote] [branch]

9.5 強行推送當前分支到遠端倉庫,即使有衝突

$ git push [remote] --force

9.6 推送所有分支到遠端倉庫

$ git push [remote] --all

10.1  生成乙個可供發布的壓縮包 

Git多人開發流程

二 多人協同開發流程 伺服器角色 ip位址 git服務端 192.168.1.107 git客戶端1 192.168.1.108 git客戶端2 192.168.1.109 git clone test1 192.168.1.107 這裡是倉庫在系統上的絕對路徑 這是將 data base1 倉庫下...

Git 多人協同開發教程

git是乙個為了更好地管理linux核心開發而創立的分布式版本控制 軟體配置管理軟體。多人協同開發 git clone git 專案開發 git add 改動的檔案 git commit m 備註資訊 git pull 解決版本合併問題 git push 專案分支管理 建立名曰 local 的分支 ...

Git 多人協同開發教程

git是乙個為了更好地管理linux核心開發而創立的分布式版本控制 軟體配置管理軟體。多人協同開發 git clone git 專案開發 git add 改動的檔案 git commit m 備註資訊 git pull 解決版本合併問題 git push 專案分支管理 建立名曰 local 的分支 ...