茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1671842 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_60D_00194.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2014/11/11 10:21:23

使用 SourceTree 查看 Git 版本線圖 (Graph) 的注意事項

上週在設計 Git 練習題目時,意外發現一個看似 SourceTree 這套 Git 版控工具的問題 (Bug),就是在開啟一些特定 Git 版本庫的時候,其版本線圖 (Graph) 會整個大亂,非常奇怪。我後來到官網論壇發問後才得到答案,原來有個小地方需要注意,各位有在用
SourceTree 的人應該也要注意一下。

我在 GitHub 有設立一個小專案,用來描述這個問題,請依照下列步驟重現問題:

  1. 先複製 (Clone) 這個範例專案下來
    git clone https://github.com/doggy8088/SourceTree_Odd_Graph_Demo
  2. 試圖取出 branch1 分支
    git checkout branch1
  3. 加入此工作目錄到 SourceTree 程式裡,然後點選 master 分支

此時你會看到這個 master 分支的版本線圖全亂了,它變成一個孤兒的分支,實在太奇怪了!


我如果用
TortoiseGit Show log 功能查看線圖,則完全沒問題!

後來終於發現,原來是 SourceTree 在顯示線圖時,預設排序為 Date Order ( 以提交時間做排序 )


只要調整為 Ancestor Order ( 以各版本祖先的順位做排序 ) 就完全解決了!

其實 Ancestor Order 才是原本 Git 顯示圖形時該使用的排序方式,因為 Git 支援修改版本的機制,例如透過 Rebase (重新指定基礎版本位置) 就可以修改版本的順序,自然也不會照著提的順序顯示版本,圖形自然也畫不出來!

我認為唯一使用 Date Order ( 以提交時間做排序 ) 的時間,是當開發人員單純想看提交的時間順序時才有用,只是這時的版本線圖就不一定準確了,這點要特別小心。

相關連結


原文出處: The Will Will Web | 使用 SourceTree 查看 Git 版本線圖 (Graph) 的注意事項
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|