Git版本控制: 常用命令與VS配置


VS 配置

  1. 無代碼打開vs
  2. 打開視圖 -> 團隊資源管理器, 或 Ctrl+Shift+G
  3. 新建倉庫文件夾 -> 雙擊 -> 新建解決方案 -> 編碼
  4. 設置同步, 可選推送到遠程存儲庫
  5. 打開視圖 -> 其他窗口 -> 程序包管理器控制檯, 或 Ctrl+ˋ, 即可輸入git命令
  6. 執行 $env:GIT_REDIRECT_STDERR = '2>&1'. 不然在powershell中使用git checkout命令會報錯.
  7. 一般流程爲: 選定分支 -> (拉取) -> 添加文件 -> 提交 -> 推送

常用git命令

更新代碼相關

# 從遠程 master 分支獲取代碼(默認遠程倉庫爲 origin)
git pull origin master

# 添加文件
git add file.abc

# 添加當前目錄下所有文件
git add .

# 移除文件
git remove file.abc

# 提交代碼(一定要加註釋, 避免進入文本編輯器)
git commit -m "commit message"

# 推送代碼到遠程倉庫的 master 分支
git push origin master

# 推送代碼到遠程倉庫的其他分支(不存在則創建分支)
git push origin <branchname>

分支相關

# 列出本地所有分支
git branch

# 列出遠程所有分支
git branch -r
git branch --remote

# 列出本地和遠程的所有分支
git branch -a

# 新建分支
git branch <branchname>

# 切換分支
git checkout <branchname>

# 新建分支並切換(保留以前的log記錄)
git checkout -b <branchname>

# 新建分支並切換(全新的log記錄)
git checkout --orphan <branchname>

# 刪除本地分支(存在沒有提交或合併地修改時會失敗)
git branch -d <branchname>

# 強制刪除本地分支(強制刪除, 如 master)
git branch -D <branchname>

# 刪除遠程分支(需推送服務器)
git branch -d -r origin/<branchname>
git push origin :<branchname>

# 重命名本地分支
git branch -m <newname>

對比相關

git diff <filename>
git diff <branch1> <branch2>

VS可視化: 轉到文件夾視圖, 選定查看的文件, 右鍵"與未修改的版本比較"

合併相關

# 合併某分支到當前分支
git merge <branchname>

日誌相關

# 顯示日誌
git log --oneline

恢復刪除的分支

注意: 每次刪除分支前, 一定要提交後再刪除. 最好使用git branch -d <branchname>, 而不是強制刪除-D, 不然恢復了也找不回改動文件.

git checkout -b dev
git add .
git commit -m "initial files"
git checkout master
git merge dev
git branch -d dev

dev分支已刪除, 執行git reflog查看歷史記錄

07748ba HEAD@{0}: merge dev: Fast-forward
bfc22f0 HEAD@{1}: checkout: moving from dev to master
07748ba HEAD@{2}: commit: initial files
bfc22f0 HEAD@{3}: checkout: moving from master to dev
bfc22f0 HEAD@{4}: commit: 娣誨姞欏圭洰鏂囦歡銆?a0527b1 HEAD@{5}: commit (initial): 娣誨姞 .gitignore 鍜?.gitattributes銆?

找到刪除dev分支前的操作, 即最後一次與dev分支相關的操作: 07748ba HEAD@{0}
進行分支恢復:

git branch dev-new 07748ba

再次查看分支, 即可看到已經恢復的dev-new, 改名字是爲了防止再次覆蓋出錯.

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