git 常用的操作命令
常用命令
# 查看版本號
$ git --version
# 查看文件狀態
$ git status
# 添加文件到暫存區
$ git add .
# 添加指定文件到暫存區
# git add [文件名]
# git add [文件名1][文件名2][文件名3]...
$ git add index.html
$ git add index.html src/main.js src/route/index.js
# 提交暫存區的文件
# git commit -m "提示信息"
$ git commit -m "xxx"
# 推送到遠程倉庫
$ git push origin master
# 查看日誌
$ git log
# 查看全部日誌
$ git reflog
# 版本回退
# git reset --hard [版本號]
$ git reset --hard 13b1905dff6...7096e44e191
# 如果代碼寫錯了之後想撤銷,也就是還原文件初始狀態
# 還原初始文件
# git checkout [文件名]
$ git checkout index.html
# 如果已經 add 代碼到緩存區
# 還原暫存區的文件
# git reset HEAD [文件名]
$ git reset HEAD index.html
# 如果已經 commit 了,就需要版本回退
# 回退版本
$ git reset --hard [版本號]
# 查看分支
$ git branch
# 查看全部分支
$ git branch -a
# 查看遠程分支
$ git branch -v
# 新建分支
# git checkout -b [分支名稱]
$ git checkout -b test
# 刪除分支
# git branch -d [分支名稱]
# git branch -D [分支名稱]
$ git branch -d test
$ git branch -D test
# 強制推送到遠程倉庫
$ git push -f origin master
git 拉取 更新 提交 創建分支 合併分支操作
拉取遠程master分支
$ git clone https://github.com/xxx/xxx.git
# 或者
$ git clone [email protected]:xxx/xxx.git
更新代碼
# 更新主分支代碼
$ git pull origin master
# 切換分支
$ git checkout dev
# 更新dev分支代碼
$ git pull origin dev
提交代碼
# 查看當前狀態
$ git status
# 添加所有變動的文件到緩存區
$ git add .
# 或者添加指定的文件
$ git add index.html
# 提交文件
$ git commit -m "提交"
# 推送到遠程倉庫
$ git push origin master
在master主分支上提交代碼
# 更新代碼
$ git pull origin master
# 查看狀態
$ git status
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到master"
# 推送到遠程倉庫
$ git push origin master
在dev分支上提交代碼
# 切換分支
$ git checkout dev
# 更新代碼
$ git pull origin dev
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到dev分支"
提交到派生的master分支上
# 切換到主分支
$ git checkout master
# 添加派生倉庫地址
$ git remote add xxx [email protected]/xxx/xxx.git
# 更新代碼
$ git pull xxx master
# 查看狀態
$ git status
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到派生master分支"
# 推送到遠程派生倉庫
$ git push xxx master
提交到在派生dev分支上
# 切換分支
$ git checkout dev
# 更新代碼
$ git pull xxx dev
# 查看狀態
$ git status
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到派生dev分支"
# 推送到遠程派生倉庫
$ git push xxx dev
本地新建分支併合並代碼到master分支
# 切換分支
$ git checkout master
# 更新代碼
$ git pull origin master
# 查看全部分支
$ git branch -a
# 新建本地分支
$ git cheeckout -b test
# 更新代碼
$ git pull origin master
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到本地test分支"
# 切換分支
$ git checkout master
# 合併test分支到master分支
$ git merge test
# 推送到遠程倉庫
$ git push origin master
在本地新建分支併合併到dev分支
# 切換分支
$ git checkout master
# 更新代碼
$ git pull origin master
# 查看全部分支
$ git branch -a
# 新建本地分支
$ git checkout -b test2
# 更新代碼
$ git pull origin master
# 查看狀態
$ git status
# 添加文件到暫存區
$ git add .
# 提交
$ git commit -m "提交到本地test2分支"
# 切換分支
$ git checkout dev
# 合併test2分支到dev分支
$ git merge test2
# 推送到遠程dev分支
$ git push origin dev
代碼衝突
一般有兩種情況:
- push推代碼的時候發生代碼衝突
- 合併分支的時候發生代碼衝突
比如在分支中寫的代碼,主分支也有類似的,就極有可能發生衝突
解決方法
當出現衝突的時候,命令行會告訴我們哪個文件合併出錯,找到這個文件的時候,看到有個特殊的箭頭包裹着一段代碼,那就是兩個代碼塊不一樣的地方,你需要自己手動修復
然後,需要重新提交,但是再commit的時候使用如下命令:
# 解決衝突再次提交
# git commit -i -m "更新說明" [文件名]
$ git commit -i -m "解決衝突" index.html