2013-03-28 65 views
1

在嘗試將新項目(僅一個測試文件)推送到github上的新存儲庫的幾個問題後,我發現我似乎已經犯了一個大錯誤隨着混帳,我有一個項目和分支跟着我,每當我在我的Mac上創建新的目錄。當我創建新目錄時,跟隨我的git分支

例如,我創造我的Mac

cd sites 
me$ mkdir mynewdirectory 

的站點文件夾的新目錄如果我從網站目錄「git的分支」,它顯示了這個

* master 
    refactor 

如果我回想起來,這個大師和重構分支似乎來自我正在工作幾周的項目。 如果我cd到mynewdirectory做「git的分支」我得到了相同的結果

git branch 
* master 
    refactor 

我那麼做「git的狀態」,並得到了很長的

a) Changes not staged for commit; and 
b) Untracked files 

這些都是明顯不相關的列表到我想開始的新項目,我猜測是我無法推到新的遠程原點的原因之一。

有沒有辦法讓我擺脫所有這些,同時儘量減少傷害?

回答

1

聽起來你已經在你的主目錄(~)或者你創建子目錄的所有目錄的父目錄中初始化了一個Git倉庫。如果你在Git倉庫的子目錄中,你可以使用

$ git rev-parse --show-toplevel 

你可能不希望有你的整個主目錄和所有文件內一個Git回購追蹤得到回購的根目錄,所以我建議移動該目錄一邊(例如,mv ~/.git ~/.git.old,如果回購在您的主目錄中),併爲您希望存儲在Git中的每個項目創建更多重點回購。一旦您重新命名了舊的回購協議,就不應該再次干擾您的子目錄,並且您可以像平常一樣使用git init來創建每個項目回購協議。

我說:「暫時」上面,因爲,如果你犯了什麼到回購,你不想永久刪除,你可能會想將它複製到一個新的回購左右你不別的地方失去它。一種方法是將舊的.git目錄移動到一個新的子目錄中,您可以從其中取出要存儲在其他位置的內容,一旦將所有內容移出,可以刪除子目錄。例如:

mkdir old_home_repo 
mv ~/.git ~/old_home_repo 
cd old_home_repo 
git checkout -- . # this will bring the files that were in the repo back into this directory 
# copy files out of this dir, into new places you want to keep them permanently 
cd .. 
rm -rf old_home_repo 
+0

它看起來像在我的主目錄中有一個回購。我做了〜/ .git -bash:/Users/me/.git:是一個目錄。然後,我按照你的建議「暫時」把它移到一邊,並且工作。但是,當你說'暫時'時,你是什麼意思?沒有永久的解決方案嗎? – 2013-03-28 04:28:13

+0

查看最新編輯 – 2013-03-28 04:35:07

+0

非常感謝 – 2013-03-29 22:01:08

1

如果您在您的站點文件夾中啓動了git,那麼您將在所有子目錄中獲得該重構分支。

+0

我想我有,但我不想那樣。我怎樣才能擺脫它? – 2013-03-28 04:25:30

+0

如果你想擺脫你的重構分支比你可以刪除它, git分支-D重構 – 2013-03-28 04:32:43

+0

我應該這樣做與主?是唯一的永久性解決方案? – 2013-03-28 04:33:56

相關問題