翻譯|使用教程|編輯:董玉霞|2022-09-13 11:58:52.630|閱讀 221 次
概述:在IntelliJ IDEA 中,Git 允許你編輯你的項目歷史。當您正在處理功能分支并希望在與他人共享之前對其進行清理并使其看起來像您想要的方式時,這很有用。例如,您可以編輯提交消息,將與相同功能相關的較小提交壓縮在一起,或者將包含不相關更改的提交拆分為單獨的提交,將更改添加到先前的提交等等。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
在IntelliJ IDEA 中,Git 允許你編輯你的項目歷史。當您正在處理功能分支并希望在與他人共享之前對其進行清理并使其看起來像您想要的方式時,這很有用。例如,您可以編輯提交消息,將與相同功能相關的較小提交壓縮在一起,或者將包含不相關更改的提交拆分為單獨的提交,將更改添加到先前的提交等等。
除非絕對必要,否則請避免修改具有多個貢獻者的遠程分支的歷史記錄,例如,如果您不小心推送了一些敏感數據。
將重寫分支歷史的修改推送到遠程存儲庫將被拒絕以防止數據丟失,因此您將不得不強制推送您的更改。
您不能修改不允許的受保護分支的歷史記錄(在 IDE 設置的版本控制 | Git頁面中配置受保護分支。請注意,如果分支在 GitHub 上標記為受保護,IntelliJ IDEA 會自動將其標記為受保護一探究竟。push --force Ctrl+Alt+S
此外,對于當前簽出的分支中未包含的提交,您無法執行修改分支歷史記錄的操作。
如果您唯一需要更改的是提交消息,則可以在推送此提交之前對其進行編輯。
有時您可能提交得太早而忘記添加一些文件,或者在最后一次提交中注意到您想要修復而不創建單獨提交的錯誤。
您可以通過使用將分階段更改附加到先前提交的修改提交選項來執行此操作。結果,您最終得到一個提交而不是兩個不同的提交。
如果您需要將更改添加到任何較早的提交而不是單獨提交,您可以使用fixup或操作來執行此squash操作。兩個命令都將階段性更改附加到選定的提交,但處理提交消息的方式不同:
如果您需要合并與相同功能相關的任何兩個提交,您可以將它們壓縮為一個,以便更清晰的分支歷史記錄。
您可以放棄當前分支中的推送提交,而無需創建恢復更改的額外提交。
借助 IntelliJ IDEA 中的 Git 集成,您可以通過執行交互式 rebase來編輯項目歷史記錄,以使其線性和有意義。這允許您在將更改從功能分支集成到另一個分支之前,通過更改單個提交、更改其順序、將提交壓縮為一個、跳過包含無關更改的提交等來清理提交歷史記錄。
IntelliJ IDEA 允許您在將更改應用到其他分支之前編輯當前分支中的提交歷史記錄。
將顯示Interactive Rebase對話框,其中包含當前分支中在選定提交之后進行的所有提交的列表:
如果“從此處交互式變基”選項被禁用,這可能是由于以下原因之一:
您可以對分支歷史記錄執行以下更改:
您可以在繼續 rebase 之前使用上下文操作(例如Revert、Undo、Amend等)修改此提交。如果您不執行任何操作,則將按原樣應用此提交。
如果您已關閉通知,請從主菜單中選擇Git | 繼續變基以恢復它。
如果您單擊Squash,默認情況下來自兩個提交的消息將被合并,因此如果您不修改生成的提交消息,此操作將反映在分支歷史記錄中。
如果單擊Fixup,則 fixup 提交的提交消息將被丟棄,因此此更改將在分支歷史記錄中不可見。
在這兩種情況下,您都可以在應用這些操作之一時打開的迷你編輯器中編輯提交消息。
因此,Rebase Commits對話框會顯示一個圖表,說明您已應用于分支中的提交的所有操作,以便您可以在開始 rebase 之前查看它們:
IntelliJ IDEA 允許您在應用更改之前在另一個分支之上重新設置一個分支并編輯源分支歷史記錄。
要復制提交哈希,請在Log中選擇它,右鍵單擊它并選擇Copy Revision Number。
IntelliJ IDEA 將在開始 rebase 操作之前檢查此分支。
將顯示Interactive Rebase對話框,其中包含當前分支中在選定提交之后進行的所有提交的列表。
當 rebase 在提交時停止時,IntelliJ IDEA 窗口的右下角會彈出一條通知,讓您繼續或中止 rebase:
您可以在繼續 rebase 之前使用上下文操作(例如Revert、Undo、Amend等)修改此提交。如果您不執行任何操作,則將按原樣應用此提交。
如果您已關閉通知,請從主菜單中選擇Git | 繼續變基以恢復它。
如果您單擊Squash,默認情況下來自兩個提交的消息將被合并,因此如果您不修改生成的提交消息,此操作將反映在分支歷史記錄中。
如果單擊Fixup,則 fixup 提交的提交消息將被丟棄,因此此更改將在分支歷史記錄中不可見。
在這兩種情況下,您都可以在應用這些操作之一時打開的迷你編輯器中編輯提交消息。
因此,Rebase Commits對話框會顯示一個圖表,說明您已應用于分支中的提交的所有操作,以便您可以在開始 rebase 之前查看它們:
重要通知:接廠商相關通知,JetBrains 將于 2022 年 10 月 1 日起全面上調 IDE、. NET 工具 和 All Products Pack 訂閱產品價格。
本次教程介紹了在IDEA中編輯 Git 項目歷史的相關內容。
想要了解IntelliJ IDEA價格的朋友,歡迎咨詢
IntelliJ IDEA技術交流群:786598704 歡迎進群一起討論
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn