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