App下載

git 常用命令

猿友 2021-01-13 14:45:19 瀏覽數(shù) (2661)
反饋

一、使用Git克隆項目

右鍵選擇Git Bash Here,先進行配置賬號和郵箱
git config --global user.name '賬號名'git config --global user.email '郵箱'
接下來進行使用 clone 把項目克隆到本地
git clone HTTP路徑/SSH路徑
等待進度走完,就可以發(fā)現(xiàn)項目已經(jīng)在本地文件了,這時候已經(jīng)證明克隆成功。
下面是Git常用的命令,可用于Git初學(xué)者參考
查看遠程倉庫: git remote -v
添加遠程倉庫: git remote add [name] [url]
刪除遠程倉庫: git remote rm [name]
修改遠程倉庫: git remote set-url --push[name][newUrl]
拉取遠程倉庫: git pull [remoteName] [localBranchName]
推送遠程倉庫: git push [remoteName] [localBranchName]
 

二、Git分支操作常用命令

查看本地分支: git branch
查看遠程分支: git branch -r
創(chuàng)建本地分支: git branch [name] ----這時候需要注意使用該命令時新分支創(chuàng)建后不會自動切換為當(dāng)前分支
切換分支: git checkout [name]
創(chuàng)建新分支并立即切換到新分支: git checkout -b [name]
刪除分支: git branch -d [name] ----注意項: -d選項只能刪除已經(jīng)參與了合并的分支,對于未有合并的分支是無法刪除的。如果想強制刪除一個分支,可以使用-D選項
合并分支: git merge [name] ----將名稱為[name]的分支與當(dāng)前分支合并
創(chuàng)建遠程分支(本地分支push到遠程): git push origin [name]
刪除遠程分支: git push origin :heads/[name]
 

三、Git 提交代碼操作常用命令

查看文件狀態(tài):git status
添加文件:git add *  ---注意項此處的*是代表全部,如需指定添加可以把*號換做指定文件
提交文件:git commit -m ‘提交描述’  ---此時提交代碼還未提交到遠程出庫去,而是在本地出庫的緩沖區(qū)
推送文件:git push origin master  ---此處的master是主支,如需要推送到分支可把master換做分支的名稱
如想忽略一些文件或文件夾不想提交時,就在倉庫根目錄下創(chuàng)建名稱為“.gitignore”的文件,寫入不需要的文件名或文件夾名,每個文件或每個文件夾占一行,如下列:
文件A
文件B
文件C
即可
 

四、Git版本操作常用命令

查看版本: git tag
創(chuàng)建版本: git tag [name]
刪除版本: git tag -d [name]
查看遠程版本: git tag -r
創(chuàng)建遠程版本(本地版本push到遠程): git push origin [name]
刪除遠程版本: git push origin :refs/tags/[name]
 

五、Git子模板操作常用命令(submodule)

添加子模塊: git submodule add [url] [path]
初始化子模塊: git submodule init ----注意項:只在首次檢出倉庫時運行一次就好
更新子模塊: git submodule update ----注意項:每次更新或切換分支后都需要運行一下
如需刪除子模板則需要以下步驟:
第一在Bash Here中輸入 git rm --cached [path]  
第二在 編輯“.gitmodules”文件,將子模塊的相關(guān)配置節(jié)點刪除掉
第三在 編輯“.git/config”文件,將子模塊的相關(guān)配置節(jié)點刪除掉
最后 手動刪除子模塊殘留的目錄
 

六、Git刪除文件操作常用命令

刪除文件: git rm file.txt
提交刪除文件: git commit -m "rm file"
推送文件:git push origin master  ---此處的master是主支,如需要推送到分支可把master換做分支的名稱
注意:刪除命令請謹慎使用
恢復(fù)本地被誤刪除的文件:git checkout -- <file>   --- 將暫存區(qū)的文件覆蓋本地文件
 

七、Git回滾操作常用命令

查詢?nèi)罩荆篻it log
回滾到某個提交的記錄:git reset commit_id
回滾到此次的提交記錄:git reset --hard commit_id
強制推送到遠端:git push origin HEAD --force
誤刪恢復(fù)時需要回滾到錯誤 commit_id,或者誤刪了某次 commit 記錄,可以通過下方代碼恢復(fù):
git relog     --- 復(fù)制要恢復(fù)操作的hash值
git reset --hard hash   ---將hash換成要恢復(fù)的歷史記錄的 hash 值
注意:刪除某次提交時最好不要用 git reset 回退遠程庫,因為之后其他人用 git pull 也會把自己的本地倉庫回退到之前的版本,容易出現(xiàn)差錯進而增加不必要的工作量
git rebase:兩個分支不在一條線上,需要執(zhí)行 merge 操作時使用該命令。
 
如果中間的某次 commit 需要刪除,可以通過 git rebase 命令實現(xiàn),方法如下:
git log
git rebase -i commit_id   ---將 commit_id 替換成復(fù)制的值
進入 Vim 編輯模式,將要刪除的 commit 前面的 `pick` 改成 `drop`
保存并退出 Vim
 

八、解決沖突操作常用命令

查看沖突內(nèi)容:git diff
手動解決沖突:git add <file> 或 git add -A
如果還在rebase狀態(tài)時,可使用git rebase --continue 則重復(fù)之前的步驟,直至 rebase 完成出現(xiàn) applying 字樣
最后git push 提交
放棄某次提交:git revert
撤銷 merge 節(jié)點提交:則需要加上 -m 指令,如git revert commit_id -m '描述'


0 人點贊