Git新手必備常用命令

2022-05-04 05:48:10 字數 2381 閱讀 4381

1、獲取工程到當前路徑

git clone ssh://gerrit-server/《工程名》.git

2、進入工程目錄

cd 《工程名》

3、安裝gerrit的changeid自動生成hook指令碼

scp -p gerrit-server:hooks/commit-msg .git/hooks/

chmod u+x .git/hooks/commit-msg

4、檢視當前分支

git branch

5、切換分支

git checkout -b develop origin/featurefeb  (featurefeb為分支名)

6、檢視**狀態

git status

7、新增差異**(按照上一步提示)

git add 檔案相對路徑

8、修改git到編譯器設定為vim

git config --global core.editor vim

9、提交改動到本地

git commit

10、再檔案到開頭寫入注釋,開頭結尾都留乙個空格、儲存推出

10.1、commit後發現**分支提交錯了,需要先切回正確分支

10.2、查操作log 找到要commit的《操作id>

git reflog

10.3、撤回commit

git cherry-pick  《操作id>

10.4 查當前狀態 重新commit

11、從遠端拉最新到**到本地往伺服器提交之前必須執行

git pull --rebase

12、本地解決衝突並執行**,保證沒有功能錯誤

13、提交改動到遠端

git push origin featurefeb:refs/for/featurefeb  (featurefeb為分支名)

14、查整個團隊到git日誌

git log

15、到girret系統看自己**指派同事review

到此乙個提交流程就結束了

有時可能會用到其他操作

a、本地**某一部分改亂了 想重新獲取

git checkout ./《需要更的路徑》

---------------一些情況的處理----------------------------------

獲取遠端最新**不和本地merge,一般在本地刪除 並執行git rm之後 使用如下命令找回誤刪檔案

git fetch

:相當於是從遠端獲取最新版本到本地,不會自動merge

一般如有檔案有衝突是不允許從遠端獲取**的(git pull --rebase)

這時候需要吧沒處理的檔案放到暫存堆疊中 git stash

然後檢視暫存堆疊 git stash list

從贊存堆疊頂回覆之前到工作檔案 git stash pop

解決衝突**就可以繼續操作了

已經成功提交成功** 並且review 被merged,之後又有修改想做為乙個新的提交,提交前沒有pull --rebase ,導致,本地當前版本和伺服器上的當前版本 不是乙個版本

指標差異會導致pull失敗。然後誤操作 又cherry-pick回來了 。這樣之前提交成功已經merged的操作頁被拽回來了。

這種情況,用git reset head^ --hard  重新定義指標 ,然後提交之前再pull rebase一遍就ok了

遇到提交後的**因為某種原因要在發布的版本中撤銷之前開發的功能

1、git log  查之之前提交**的comm id

2、git revert commit-id 撤銷提交 會生成乙個反向的差異檔案

3、如果之前有多次提交要撤銷,記得按倒著的順序revert,從最近的一次開始

4、最後解決衝突需要重新提交** ,因為之前revert多次,會有多個commit,可以用git把他們合併成乙個commit 提交一次就可以了

git rebase -i head~x   (x是想把之前的多少步操作合併到一起,乙個整數。之前看查log確認)

按照提示修改操作標識 按部就班就可以了

5、如果提交報錯提示沒有change-id,那麼可以找回change-id

git commit --amend (這乙個修改提交的命令,會呼叫生成change-id的指令碼,之前執行revert 的操作沒有呼叫此指令碼所以沒有change-id)

如果要放棄本地修改後更新:

git reset --hard

git pull --rebase

衝突解決

其中updated upstream 和*****之間的內容就是pull下來的內容,====和stashed changes之間的內容就是本地修改的內容。

碰到這種情況,git也不知道哪行內容是需要的,所以要自行確定需要的內容。

Git 常用命令(新手適用)

這兩天工作之餘,自學了下git,感覺挺好用的,做個小記錄,方便查詢!git是一款免費 開源的分布式版本控制系統 git branch 檢視本地所有分支 git status 檢視當前狀態 git branch a 檢視所有的分支 包括本地 遠端 git branch r 檢視遠端所有分支 git a...

Git常用命令(新手試學)

常用命令 cd 資料夾 進入指定資料夾目錄 git init 把當前資料夾目錄乙個本地git倉庫 ls 列出當前目錄下的所有檔案 不包含隱藏檔案 ls ah 列出當前目錄下所有的檔案及隱藏檔案 clear 清除當前命令列視窗內的日誌 git add 檔案 把檔案新增到git進行暫存 git comm...

Linux 常用命令(常用必備)

ls 列出當前目錄有哪些檔案 ls 表示根目錄 cd change dir 切換當前目錄 ls l ll 更詳細羅列當前檔案目錄的詳細細節 pwd 檢視當前目錄是什麼 touch建立檔案 cat 檢視檔案內容 echo寫入檔案內容 如 echo rm 刪除檔案,刪除目錄 rm r 目錄名 rm rf...