git hg 什麼叫做bare repo

2021-09-08 16:25:53 字數 1100 閱讀 1957

[git/hg]什麼叫做bare repo?

引用一 個bare repo與普通repo的區別是沒有專案檔案的working copy,即repo根目錄下只有專用目錄,而沒有任何其他**檔案和資料夾;這是為了響應作為codebase應當遵循的「only store, never update from revisions(只儲存版本,不更新到實際**檔案)」原則。

hg管理的repo天生就能做codebase使用,無論是否是bare的,這點是由其分布式版本控制系統的本質決定的,它可以隨時把當前的repo通過自帶的http server發布**,特別適合分布式開源專案的**分享。

git也是分布式**版本管理工具,不過它對作為codebase的repo做了嚴格的bare要求。可以看到的是許多人在初學git時不了解這一點,抱怨自己做spike時不知如何提交**到在本機上的codebase。這裡順手寫下兩個tips:

* 初始建立乙個bare repo $

git init --bare

* 如果已有乙個repo了,使用下面的方法將其轉化為bare的 $

git config --bool core.bare true

之後可刪除除了repo根目錄.git資料夾之外的所有檔案,即只保留專用目錄

摘自: git vs hg - 挖金子的礦工 - 部落格頻道 - csdn.net

補充:1. 上面部分說法可能不對,因為該博文是針對老版hg寫的,而後來hg也有了類似git的repo內多命名分支,而對於bare repo,官方wiki (gitconcepts#bare_repositories上)說要這樣: hg update null

2. 對git而言, bare repo不僅僅是沒有checkout, 而且there is no .git directory is created. instead, the files normally in the .git directory are placed in the top-level directory where the working directory would normally be. (來自shared repositories should be bare repositories - gitguys)

什麼叫做NP問題,什麼叫做NPC問題

首先說明一下問題的複雜性和演算法的複雜性的區別,下面只考慮時間複雜性。演算法的複雜性是指解決問題的乙個具體的演算法的執行時 間,這是演算法的性質 問題的複雜性是指這個問題本身的複雜程度,是問題的性質。比如對於排序問題,如果我們只能通過元素間的相互比較 來確定元素間的相互位置,而沒有其他的附加可用資訊...

什麼叫做NP問題,什麼叫做NPC問題

首先說明一下問題的複雜性和演算法的複雜性的區別,下面只考慮時間複雜性。演算法的複雜性是指解決問題的乙個具體的演算法的執行時 間,這是演算法的性質 問題的複雜性是指這個問題本身的複雜程度,是問題的性質。比如對於排序問題,如果我們只能通過元素間的相互比較 來確定元素間的相互位置,而沒有其他的附加可用資訊...

什麼叫做安慰!

蘇 蘇格拉底 孩子,為什麼悲傷?失 失戀者 我失戀了。蘇 哦,這很正常。如果失戀了沒有悲傷,戀愛大概就沒有什麼味道。可是,年輕人,我怎麼發現你對失戀的投入甚至比對戀愛的投入還要 傾心呢?失 到手的葡萄給丟了,這份遺憾,這份失落,您非個中人,怎知其中的酸楚啊。蘇 丟了就是丟了,何不繼續向前走去,鮮美的...