我想在創建標記時提交二進制文件,這些二進制文件是.gitignored,而git-add則說「如果您真的想添加它們,請使用-f。」所以,我想知道這是否是一件安全的事情。 我想用它來在目標計算機上檢出二進制文件。舊的「系統」是將舊版本保存在由編譯版本日期命名的子目錄中,這有點煩人。使用git add -f覆蓋.gitignored文件是否有任何負面影響?
1
A
回答
2
通常,添加忽略的文件是安全的。一旦添加,他們將被追蹤,當然。如果你想停止跟蹤這樣的文件而不從你的工作目錄中刪除它,你必須git rm --cached <filename>
。
但是!在將二進制文件添加到您的git repo之前,請考慮三次;您的工作流程出現問題的可能性很大,或者您使用的git的方式不符合預期。只要你的倉庫中有很多二進制文件,你會注意到git變得非常慢。
對於您的特定應用,您可能需要查看git annex。
另一個提示:如果您臨時需要將二進制文件添加到存儲庫,請在孤立分支(git checkout -b --orphan <new_branch>
)上執行此操作。這樣,一旦你再次刪除了二進制文件,你就可以運行垃圾收集並修改reflog,並且二進制文件將會變爲已不存在了。如果您只是將它添加到常規樹中,它仍然會處於引用提交中,因此將它作爲blob放在.git目錄中,從而放慢速度。
2
這是安全的。 git警告你的唯一原因是你將它們標記爲忽略,這意味着你告訴git你不希望它們在樹中。
Git警告你,並要求你清楚地知道你剛纔添加的文件是在添加文件之前添加的。
相關問題
- 1. 屬性覆蓋沒有任何影響
- 2. 向POCO添加PetaPoco屬性是否有任何負面影響?
- 3. jQuery - 使用多個就緒事件是否有負面影響?
- 4. 在多個TFS服務器之間切換是否有任何負面影響?
- 5. 用git覆蓋文件夾
- 6. 'git add。'影響文件夾以外的文件行.git文件夾
- 7. Web.config覆蓋不影響用戶控件
- 8. Courier新字體是否有負面影響?
- 9. 是否有任何負面影響採購一個實際上不存在的JavaScript文件?
- 10. 是否有任何加載頁面經常使用jQuery的有害影響?
- 11. VC++中的函數級鏈接是否有負面影響?
- 12. 基於GetHashCode的Equals是否有負面影響?
- 13. 使用計時器是否對應用程序有負面影響?
- 14. 使用Git防止文件覆蓋
- 15. git rebase,「會被覆蓋」,「沒有變化 - 你忘了使用'git add'嗎?」
- 16. git checkout覆蓋所有文件嗎?
- 17. 是否有使用HTML標籤由屬性的任何可能的負面影響
- 18. 在Rust中使用本地函數是否有任何負面的性能影響?
- 19. 覆蓋是否更容易受到網絡釣魚的影響?
- 20. web.config是否覆蓋任何app.configs?
- 21. SQL - .NET - SqlParameters - AddWithValue - 當沒有指定Param Type時,是否有任何負面的性能影響?
- 22. 造成負面影響
- 23. 做C++塊{}有負面影響
- 24. 基於文件的CacheDependency是否會對性能產生負面影響?
- 25. 是在Git 2.x`git add .`和`git add -A`是否一樣?
- 26. git add忽略修改-f
- 27. Git push -f影響主分支
- 28. gitignored文件到Heroku
- 29. 是否有可能通過git別名覆蓋git命令?
- 30. 是否可以恢復由git checkout覆蓋的文件?
雖然我同意向git repo添加二進制文件並不好,但總共1.64MB,其中只有一個會從一個標籤更改爲另一個。另外我只希望那些在標籤內。 git附件看起來像一個整齊的同步工具,但不完全是我需要的。我應該補充說舊版本的系統需要繼續使用,因爲實際使用這個軟件的人需要學習使用他沒有時間的git。這些repo中的二進制文件大部分都是針對我的,所以我可以在提交時添加標籤,添加二進制文件並對更改發表評論 – mlatu