上 git 課程的內容,主要是說明 Detached Head 如何發生和修正
此為預設 git 線圖
對 Commit G 進行 git checkout,從下圖就知道,Detached Head 已經產生啦,該狀態是不在任何 branch 上的喔,應該建議應該下 git checkout -b BranchName 來建立 branch,讓該 commit 有所屬
假設使用者忽略上圖訊息,就直接寫 Code 且又 commit ,commit 名稱為 DetactHeadCommit
透過 TortoiseGit 來觀察線圖變化
假設在 Detacted Head 上完成,準備要切回 master 上來進行合併,切回 master 當下會有下面訊提醒,遺留一個 commit,要建立一個 branch 來保留它喔
利用 TortoiseGit 來觀察線圖,發現 DetactHeadCommit 不在線圖上啦
此時利用 git reflog 指令來找出 DetachHeadCommit 的 SHA1
利用 git checkout -b efa879 來讓 DetactHeadCommit 有所屬 branch
再利用 TotoiseGit 來顯示該 branch,就會看見 efea987 的 Parent Commit 是 Commit G 囉,DetactHeadCommit 並沒有消失不見,Code 還在
而 ToroiseGit 在這部分有防呆,當要 git checkout commit 時,option 內會預設要建立 branch
星期五, 9月 22, 2017
星期日, 9月 10, 2017
[git] 檔案刪除衝突
7天學會Git版本控制 書籍的解說範例,以往看到的解決衝突例子,都是 Code 同行更改來說明,這次看到是檔案被刪除,就想 try 一下,在 VSTS 上刪除該檔案,在 VS 上修改該檔案並進行同步
同步會發生衝突確認
進行衝突解決判斷
書籍內容說明
同步會發生衝突確認
進行衝突解決判斷
書籍內容說明
- 保留檔案,利用 git add 把檔案再加入
- 刪除檔案,利用 git rm 把檔案移除
星期日, 9月 03, 2017
[git] 格式化 git log 查詢
在
內容中,都有介紹到格式化 git log 的設定,筆記一下
內容中,都有介紹到格式化 git log 的設定,筆記一下
- 原本 git log 結果
- 7天學會Git版本控制內容介紹
git config --global alias.lg "log --graph --decorate --pretty=oneline --abbrev-commit"
- SITCON Workshop - Git 版本控制入門課程介紹
git config --global alias.lg "log --color --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --"