在SVN中,您可以簽出(阻止其他人在同一個文件上工作)。你可以在GIT中做到這一點嗎?看起來你必須建立第二個系統,告訴人們哪些文件正在被GIT的人編輯?在SVN中,您可以簽出(阻止其他人),您可以在GIT中執行此操作嗎?
回答
Git不會有一箇中央存儲,您可以查詢到檢查文件是否被「鎖定」。由於它的分佈式特性,一個存儲庫可能在1000臺計算機上,並且它們都是平等的。如果你允許他們全部鎖定一個文件,並讓他們與其他所有的存儲庫通信,那麼所有文件基本上都會被鎖定。
所以,不,你不能這樣做,在Git的。相反,依靠經常更新和處理奇怪的合併衝突。
這不會使一個很大的意義與DVCS(如「分佈式」)
所有你能做的就是設置一個「中央」回購這將不接受非快速向前推進,這將使在將其推向「中央」回購之前,您先重新開始工作。
但同樣,有沒有在你的所有的歷史存儲在本地,並從所有其他的「服務器」 VCS完全隔離可以工作一個VCS「鎖定」的概念。
又見http://stackoverflow.com/questions/2171823/svn-monitor-like-software-for-git-repositories/2171914#2171914 – VonC
Git中(或任何分佈式版本控制系統),問題不在於「你可以鎖定文件?」,而是「爲什麼會有人使用VCS中鎖定一個文件需要或期望?」 DVCS的工作流程/心態只會使操作完全不合理。這與詢問當您甚至不知道要使用哪個框時如何鎖定所有1000個不同框中的/ etc/password相似。
你不要阻止他們編輯的文件拷貝控制其他開發人員的訪問。您可以通過決定將哪些修補程序放入您的代碼副本來控制訪問。
鎖定一個文件時,文件中包含的內容是不是人類可讀是有用的,因此不能合併。 DVCS'是否有處理無法合併的文件的機制? – RjOllos
- 1. 您可以登錄或阻止自動命令行操作?
- 2. Postgresql - 您可以在沒有CTE的情況下執行此操作嗎?
- 3. 您可以在Matlab中執行延遲集(:=在Mathematica中)嗎?
- 4. 您可以使用NH3執行復雜的聚合操作嗎?
- 5. ColdFusion可以在更少的行中執行此操作嗎?
- 6. 您可以強制執行MPMoviePlayerPlaybackDidFinishNotification嗎?
- 7. 我可以在一個Mysql查詢中執行此操作嗎?
- 8. tsql - 我可以在CASE語句中執行此操作嗎?
- 9. 我可以在.Net和WPF中執行此操作嗎?
- 10. SP可以在SQL Server中執行此操作嗎?
- 11. 我可以在JPA/Hibernate/Spring中執行此操作嗎?
- 12. 我可以在Lisp中執行此操作嗎?
- 13. 我可以避免在您的網站上阻止「邀請您的Facebook好友」彈出窗口被阻止嗎?
- 14. 您可以在PHP中執行架構層依賴關係嗎?
- 15. 在Netbeans中,您可以爲PHP項目執行SSH連接嗎?
- 16. 在Javascript中,您可以擴展DOM嗎?
- 17. 您可以在Foundation pre/postfix標籤和操作中使用Foundation Icons嗎?
- 18. 您可以基於asp.net中的單獨窗口執行操作嗎?
- 19. 您是否可以阻止用戶查看您的Alexa技能?
- 20. 您可以在XML和XMLHttpRequest之外使用其他格式嗎?
- 21. Dwoo - 您可以在循環時訪問其他變量嗎?
- 22. 您可以強制其他用戶進行GPO更新嗎?
- 23. 您可以構建Ember組件,以便它可以與其他Web組件共存並互操作嗎?
- 24. 我可以在Matlab中快速執行以下操作嗎?
- 25. 您可以使用oauth執行哪些Facebook操作?
- 26. 我可以使用Groovy中的ExpandoMetaClasses執行此操作嗎?
- 27. Page_ClientValidate('')我可以在控制級別執行此操作嗎
- 28. 您可以使用Android應用阻止傳入流量嗎?
- 29. 您可以阻止ASP.NET應用程序關閉嗎?
- 30. 您是否可以將內存儲存在VS中以用於其他運行?
這不是所謂的「退房」,檢查出越來越在SVN工作拷貝/ CVS說話。大概你的意思是在文件上獲得'獨佔鎖'?通過'svn lock'命令實現。 –
而且當時的「諮詢」鎖 - 任何人都可以打破它。它只是一個交流工具。 –