在兩個測試承諾,其中第一隻有操作git mv file moved_file
,第二隻mv moved_file moved_again_file && git add -A moved_file moved_again_file
,都出現在git status
之前提交重命名,但在git commit --verbose
他們顯示爲新的和刪除的文件。爲什麼git的差異樹顯示始終顯示更名爲添加和刪除
我期待每一個後git diff-tree HEAD
承諾顯示一個R
(重命名)狀態,但我不斷收到二:一A
和D
。
我試圖編寫一個腳本,它將根據文件狀態執行操作,但如果它們始終顯示爲添加/刪除,我無法正確計劃R
(或C
)的狀態。
Git是版本1.8.3.1,如果這有所作爲。
我知道這是一個管道命令,這就是爲什麼我使用它的輸入。我只是不知道這些選項必須啓用,因爲手冊頁在「RAW OUTPUT FORMAT」部分中沒有提及任何內容,在其描述之外的每個選項都沒有更多。 – Walf
是的,文檔......好吧,不要把它放在太細的地方,糟糕的是:-)這是特別糟糕的,因爲很多差異生成命令在一些棘手的角落案例中具有不同的默認行爲,但在任何地方都沒有提到這一點。 – torek