我剛開始使用Git的,和我有一個問題:git文件夾是否獨立?
當我創建一個新的存儲庫,我得到的,我應該把所有的文件的文件夾(這個文件夾包含.git
文件夾)。這個文件夾是完全獨立的嗎?
比方說,我已經創建了一個新的存儲庫,並在該項目上工作了一段時間(做提交)。如果我將該文件夾移動到另一個位置(比如說另一個磁盤),它還能工作嗎?如果我把它移到另一臺電腦上怎麼辦?我可以在外部設備上使用存儲庫/文件夾(外部硬盤或USB存儲棒)並在多臺計算機上使用它嗎?
我剛開始使用Git的,和我有一個問題:git文件夾是否獨立?
當我創建一個新的存儲庫,我得到的,我應該把所有的文件的文件夾(這個文件夾包含.git
文件夾)。這個文件夾是完全獨立的嗎?
比方說,我已經創建了一個新的存儲庫,並在該項目上工作了一段時間(做提交)。如果我將該文件夾移動到另一個位置(比如說另一個磁盤),它還能工作嗎?如果我把它移到另一臺電腦上怎麼辦?我可以在外部設備上使用存儲庫/文件夾(外部硬盤或USB存儲棒)並在多臺計算機上使用它嗎?
是做它的Git操作。這是本地存儲庫,它包含有關存儲庫的所有信息。
唯一沒有包含的是全局配置。
查看this free Git documentation瞭解更多詳情。從那裏引用:
Git創建.git目錄,這是幾乎所有Git存儲和操作的目錄所在的位置。如果您想備份或複製您的存儲庫,則在其他地方複製這個單獨的目錄會爲您提供幾乎所有您需要的內容。
一個配置設置需要特別考慮:遠程URLs你可以有遠程URLs 'git @ localhost:foobar.git',這在其他計算機上顯然不起作用。 – DCoder
確實如此,但是整個遠程存儲庫無論URL的內容是什麼(原始計算機仍然處於防火牆之後),都可能無法實現。答案仍然有效:__this__存儲庫是自包含的,包含所有數據;外部的東西,如配置的遙控器可能會或可能不會從不同的位置到達。同樣,其他配置可能會引用特定於本地計算機的文件,例如全局'〜/ .gitignore',自定義'diff'工具等。 –
是的,它包含了git需要的所有東西。
它確實與usb棒一起使用。
是該文件夾的自包含的,但你需要安裝git的,如果你想從不同的機器
該文件夾本身是獨立的。
實際上,如果你承諾一切,沒有本地修改,.git
文件夾本身就足夠了。 .git
文件夾是您的存儲庫。該文件夾的其餘內容是簽出的工作目錄。您不可以將這些文件(特別是如果有大量文件)複製到其他機器上。
差不多。
push
或clone
或bundle
複製),即使它們是.git
文件夾中存儲。 .git
目錄),在本地機器上工作的鉤子可能不適用於另一臺(因爲它是,例如,perl
腳本,並且perl
未安裝在另一臺機器上)。Git會將移動的回購確認爲git回購,因此您可以說它在這方面是獨立的。
我更願意將我的回購作爲git bundle
(只有一個文件才能移動)。
但如果你依賴於任何其他(腳本/工具/其它回購)爲您的回購是完整的,實際上讓你使用它,你可能需要考慮其他移動外部元素。
Git文件夾可能被sel包含,但並不總是這樣。
例如,今天我努力嘗試複製一個恢復的.git文件夾和文件到一個新的虛擬盒系統後存儲在虛擬盒/ Lubuntu外部USB驅動器的硬盤驅動器損壞之後意外斷開正確關閉之前用chkdsk/f/x固定)。
據我所知,所有文件似乎完好無損,除了標題是紅色的,git日誌顯得正常。但是,所有試圖推向新創建的遠程倉庫的嘗試都遇到了各種錯誤,例如各種提交#的「無法遍歷父項」,以及「您確定您有權限?」此外,當文件最初從我恢復的驅動器複製到 新創建的虛擬機時,有一些關於「符號鏈接」的消息。我想這可能是一個權限問題,但所有文件都是讀/寫的。也許.git有內部檢查?最終結果我只成功地通過刪除.git和初始化本地回購(通常是硬重置)來推送到遠程...所有歷史丟失(僅僅是一個類項目,所以本地只有事先,現在Bitbucket將防止我希望的復發。
但我想.git文件夾是自包含的。
您的工作文件和文件夾與'.git'文件夾並排放置.git'文件夾本身包含所有提交的數據,日誌,狀態等如果你有一個'--bare'版本庫,那麼它只用於存儲,並且沒有工作文件,裸拷貝通常是'remote's。 –