2011-08-26 213 views
63

我剛開始在Vista中使用git,我的存儲庫在/path/to/project/git repo下。如何重命名git根文件夾?

我現在發現在git bash中工作時文件夾名稱中的空間是一個小毛病。

我可以將文件夾重命名爲/path/to/project/gitrepo嗎?一切都在git配置相對,還是有什麼明確指向父文件夾?

我已經嘗試過只需要一個主文件夾的窗口副本,並運行git bash就可以了,'git log'顯示我之前做過的更改。所以我假設重命名主文件夾是可以的,但是我想在進一步之前確定。

回答

42

要修改略有Greganswer,是的,一切都與一個混帳回購協議是相對父.git目錄,但:

(這不會可能直接影響到你,我只在這裏提到的那些原因爲了完整的緣故)。

  • 回購本身的路徑可以通過在計算機上運行的其他服務引用(Apache的,SSH,另一個回購宣告你的回購作爲遠程使用完整的文件路徑, gitolite層聲明您的回購處於某一特定路徑,...)
  • 某些操作使用回購的完整路徑(例如GIT_INDEX_FILEfilter-branch命令中使用,例如參見this thread),所以顯然,在對回購執行復雜操作時,不要重命名根目錄。

另外,一個「窗口複製」(而不是git clone),將複製的一切,包括掛鉤,如果您已經編輯他們搞得那些一種修改可能包括在他們的腳本絕對路徑。

+2

所以如果有人有切實可行的步驟來確保這樣做,那將是非常可行的。 – ahnbizcad

+0

@gwho在重命名repo文件夾旁邊的步驟是什麼? – VonC

67

是的,重命名包含Git存儲庫的文件夾是安全的。 Git倉庫中的所有路徑都是相對的。

+0

輝煌,謝謝。 –

5

在我看來,最好是使用git的工作流程,尤其是當你使用Git服務器(遠程主資料庫),這意味着:

  • 得到同步舊目錄與你的git服務器(git pullgit push,最後git status,看看是否一切都很好)
  • git clone <former directory> <new directory>

(由於我也是新GIT,這可能不是完整的,正確的答案。我有和米克一樣的問題,爲了學習的目的,我嘗試着用git的方式來做:)謝謝你的提示,vonC!請糾正我,如果需要:)

+1

如果你'克隆<以前的目錄><新目錄>',你不需要先創建'<新目錄>'。 'git clone'會爲你創建它。 – VonC

+0

@VonC:thx,我改變了這個 – PythoNic

+1

我不認爲這是你想要的。 這將'<新目錄>的原點設置爲'<舊目錄>'。 因此,'<新目錄>'中的'git remote -v'會顯示'origin C:/ old/directory'。 – kvu787