最近發(fā)布的Git2.10增加了一些有用的新功能到push命令中,包括:更精確的進度信息、更多的選項,以及--force-with-lease選項的增強。另外,處理數(shù)字簽名功能增加了一些新的選擇,使用戶用起來更便捷。同時,配色方案新加了對斜體和刪除線的支持。
git push的改進包括:
git push --fore-with-lease,如果其他參與者在同時提交,此選項保證你不會覆蓋他們的改動,確保創(chuàng)建一個新的引用。這樣,對一個未做merge的fetch,用戶若需要push,不必再調(diào)用update-ref命令。
降低了混亂的風(fēng)險:現(xiàn)在,在執(zhí)行push命令時,服務(wù)器端通過git gc產(chǎn)生的消息中增加了客戶端前綴信息。git gc運行著數(shù)個常規(guī)任務(wù),例如壓縮文件版本信息,以及由一定的命令自動運行。
新的--push-option標(biāo)志允許開發(fā)者傳遞額外的選項給接收端,以進行預(yù)處理和后處理的“鉤子”調(diào)用。
git push將在服務(wù)器上產(chǎn)生更精確的關(guān)于push負載所觸發(fā)的任務(wù)的報告。GitHub發(fā)行了一份很好的功能描述。
worktree命令也有兩處提高,包括:
git worktree add現(xiàn)在能使用 - 作為前一個版本的簡略語,完全代表@{-1}。
git worktree lock可用來防止存儲在移動設(shè)備或者共享網(wǎng)絡(luò)上,暫未被加載的鏈接工作樹被剪除。之前,開發(fā)者需要手工創(chuàng)建名為locked的文件,以及其他一些管理文件,才能實現(xiàn)同樣功能。
正如之前提到的,在Git 2.10中,處理簽名變得更加容易,現(xiàn)在,git log和其他命令會顯示完整的64為鍵值編號。而且,通過使用新的log.showSignature配置變量,git log默認顯示簽名,用戶也能使用--no-show-signature標(biāo)志關(guān)閉簽名。進一步來說,git pull --rebase現(xiàn)在會提示用戶,傳遞--verify-signature是一個不起作用的操作。
最后,Git豐富了輸出的配色方案,增加了對斜體和刪除線的支持,它們可以和其他的配色方案結(jié)合使用。
Git 2.10還包括很多新特色功能和增強,以及修正了一些已知問題,詳細列表參見其發(fā)行說明。
查看英文原文:Git 2.10 Improves Push and Worktree Commands, Adds Style Options, and More