階段和提交更改
基礎
在修改原始碼後,你應該舞臺 Git 的這些變化,然後才能提交它們。
例如,如果你更改 README.md
和 program.py
:
git add README.md program.py
這告訴 git 你要將檔案新增到你做的下次提交中。
然後,使用提交更改
git commit
請注意,這將開啟一個文字編輯器,通常是 vim 。如果你不熟悉 vim,你可能想知道你可以按 i
進入插入模式,寫下你的提交資訊,然後按 Esc
和:wq
儲存並退出。要避免開啟文字編輯器,只需在你的訊息中包含 -m
標誌即可
git commit -m "Commit message here"
提交訊息通常遵循一些特定的格式規則,有關詳細資訊,請參閱好提交訊息 。
快捷鍵
如果你更改了目錄中的大量檔案,而不是列出其中的每個檔案,則可以使用:
git add --all # equivalent to "git add -a"
或者從頂級目錄和子目錄新增所有更改,不包括已刪除的檔案 :
git add .
或者只新增當前跟蹤的檔案(更新):
git add -u
如果需要,請檢視分階段的更改:
git status # display a list of changed files
git diff --cached # shows staged changes inside staged files
最後,提交更改:
git commit -m "Commit message here"
或者,如果你只修改了現有檔案或刪除了檔案,並且沒有建立任何新檔案,則可以在單個命令中組合 git add
和 git commit
的操作:
git commit -am "Commit message here"
請注意,這將以與 git add --all
相同的方式暫存所有已修改的檔案。
敏感資料
你永遠不應提交任何敏感資料,例如密碼甚至私鑰。如果發生這種情況並且已將更改推送到中央伺服器,請將任何敏感資料視為已洩露。否則,之後可以刪除這些資料。一種快速簡便的解決方案是使用“BFG Repo-Cleaner”: https : //rtyley.github.io/bfg-repo-cleaner/ 。
命令 bfg --replace-text passwords.txt my-repo.git
從 passwords.txt
檔案中讀取密碼,並將其替換為***REMOVED***
。此操作考慮整個儲存庫的所有先前提交。