2013-07-31 73 views
0

所以我正在學習Git,我正在使用sourcetree GUI。我在服務器A上有一個遠程倉庫(不是一個裸露的倉庫,而是一個工作倉庫)。所以我將遠程repo克隆到我的本地機器上,然後創建了一個名爲「blah.txt」的新文件,然後添加,將更改提交到本地repo。git push有奇怪的行爲?

然後在設置git config receive.denyCurrentBranch ignore後,我從本地倉庫推到遠程倉庫。但是,在推送後,我無法在遠程倉庫中看到我創建的文件(blah.txt)。

但是,當我將相同的遠程回購克隆到本地計算機上的其他文件夾時,blah.txt再次出現。任何人都可以解釋發生了什麼事?

回答

0

git push只將更改推送到遠程倉庫中的.git目錄,但它不更新遠程倉庫工作目錄中的文件。

你可以在遠程倉庫中說git reset --hard來更新文件,但是如果有一些文件沒有提交編輯,你將會失去這些改變。 (你甚至可以製作一個git鉤子,如果你希望在每次收到一個pull時自動更新文件,那麼它會運行git reset --hard)。