Git 2.40 源代碼控制發布

經過三個月的開發,分散式原始碼控制系統Git 2.40已經發布。 Git 是最受歡迎、可靠和高效能的版本控制系統之一,提供基於分支和合併的靈活的非線性開發工具。 為了確保歷史記錄的完整性和對追溯更改的抵抗力,在每次提交中都會使用整個先前歷史記錄的隱式哈希;還可以使用開發人員的數位簽名來驗證各個標籤和提交。

與先前版本相比,新版本包含 472 個變更,由 88 名開發人員參與準備,其中 30 名開發人員首次參與開發。 主要創新點:

  • 除了先前支援的 Vim 編輯器之外,git-jump 腳本還添加了對 Emacs 編輯器的支援。 Git-jump 用於將文件中位置的資訊傳送到文字編輯器,以便快速導航並跳到特定位置編輯程式碼。 例如,git-jump 可用於在編輯器中在解析合併衝突、評估差異和執行搜尋所產生的行之間跳轉(您可以執行“git Jump grep foo”,然後在通配符“foo”的位置之間快速跳轉)發生)。
  • 「git cat-file」支援使用「-s」和「--batch-check」選項以及「--​​use-mailmap」來正確確定物件的大小,同時考慮基於的識別碼取代檔案mailmap 中指定的電子郵件綁定(以前,「--use-mailmap」選項僅影響內容的輸出,但沒有考慮到舊的和替換的名稱/電子郵件對可能具有不同的大小)。
  • 「git check-attr」指令中新增了「--source」選項,用於選擇具有必要「.gitattributes」檔案的樹,如果有多個「.gitattributes」文件,則該樹將用於確定實際屬性在儲存庫中。
  • 「git bisect」指令的實作以 C 重寫並內建到主 git 可執行檔中(先前指令以 Shell 腳本的形式實作)。
  • 「git add —interactive」指令的舊 Shell 實作已被刪除(在 git 2.26 中提供了內建 C 版本,但舊 Shell 實作仍然可用,並由 add.interactive.useBuiltin 設定調節)。
  • 在「git merge-tree」指令中新增了「--merge-base」選項。
  • 在「git range-diff」指令中加入了「--abbrev=」選項」
  • 新增了透過「git var」指令設定 GIT_SEQUENCE_EDITOR 變數來覆寫 rebase 指令互動模式的清單編輯器的功能,類似於「git var GIT_EDITOR」。
  • 帳戶子系統增加了對具有有限有效期限的密碼的支援。
  • Bash 的輸入完成腳本現在具有不區分大小寫的模式。

來源: opennet.ru

添加評論