我有一個倉庫,其中有一個名為/migrations.gitignore的檔案夾
它們是資料庫遷移檔案。
在本地和遠程服務器上它們會有所不同,我想讓它們保持不同,但是即使該檔案夾位于 gitignore 中,顯然仍然存在沖突的問題
error: The following untracked working tree files would be overwritten by merge:
directory/backend/migrations/README
directory/backend/migrations/alembic.ini
directory/backend/migrations/env.py
directory/backend/migrations/script.py.mako
Please move or remove them before you merge.
Aborting
我如何通過保持本地和遠程上的遷移檔案夾完全不被跟蹤和不同來解決這個問題,同時仍然能夠無縫更新 repo。
uj5u.com熱心網友回復:
這不是一個“沖突的問題”。這只是 Git 遵循的一條規則,非常正確:您提議的合并包含的檔案的路徑與您在本地忽略的路徑相同,并且 Git 不想隨意覆寫它們(而且您不希望 Git 這樣做)。
在您的存盤庫中忽略遷移檔案夾是不夠的。在這個 repo 的每個人的副本中都必須忽略它,并且在每個分支中都必須不存在它。顯然情況并非如此。
就個人而言,在這種情況下,我只會按照錯誤訊息的建議進行操作:將麻煩的檔案移到一邊,以便進行合并。然后再把它們帶回來。例如,您可以將它們從作業檔案夾移到桌面,進行合并,然后再次將它們移回作業檔案夾。或者,對于更類似于 Git 的方式:
- 執行
git stash -u包含未跟蹤的作業樹檔案的操作。 - 進行合并。
- 現在
git restore這四個檔案從存盤庫中移出并進入作業樹。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/504074.html
標籤:混帐
上一篇:盡管全域存盤(ssh密鑰),Git仍不斷詢問我的user.name和user.mail
下一篇:處理外部C 依賴項
