2015-07-16 3 views
0

У меня, похоже, проблема с использованием git pull на локальной ветке. По сути, я клонировал ветку из моего удаленного репозитория BitBucket, который клонирован в мой каталог USER_HOME \ BRANCH на моей машине. Я хочу сохранить эту ветку в актуальном состоянии с удаленной веткой. Я не вношу никаких изменений в ветку на этом компьютере. Люди на разных машинах вносят свои изменения в эту ветку в битбакет, и я хочу иметь возможность получать эти файлы, не удаляя каталог и git clone снова и снова. Вот что я делаю после того, как у меня есть клон.Git pull не обновляет локальные файлы

git fetch && git checkout -b <branch> 
git pull <branch> <repo_url> 

Git тянуть обычно возвращает «вы X совершает за происхождение /. Затем он выполняет GIT тянуть, однако, если я перейти в каталог, где находится моя ветка, ни один из файлов не были изменены. Двигаемся git pull сразу после возврата «уже обновлен».

Таким образом, существует некоторая разница между фактической папкой с файлами и моей веткой git. Я новичок в git и мог бы легко пропустить что-то, хотя я пробовал многие вещи и не могут заставить его обновлять файлы. Любые идеи?

Я пробовал:

git fetch origin 
git reset --hard origin/master 

git pull --no-ff <repo_url> <branch> 

ответ

0

Это самый простой способ добиться того, что вы хотите:

Во-первых, клонировать репозиторий.

git clone https://[email protected]/username/repo.git 

Затем, когда вы хотите обновить свою локальную копию, просто запустите git pull

Я предлагаю повторно клонировать его и просто с помощью git pull - посмотреть, если это работает.

+0

Это то, что я делал. После клона я могу увидеть недавно зафиксированные изменения с удаленного с помощью git diff, а затем сделать git pull, чтобы вытащить эти изменения. Но после того, как я вытащу, если я перейду в каталог, где находится клон, ни один из файлов не был изменен, они все время штампуются одновременно, это время, когда клон был запущен, поэтому ни один из файлов не имеет были изменены с помощью git pull. – SpencerRakoczy

+0

@SpencerRakoczy хм, странно, возможно, проверьте права на файловую систему? Я предполагаю, что вы попробовали 'git reset --hard HEAD'? – developerbmw

+0

Да, я попробовал сброс git --hard HEAD, а также проверил разрешения, сняв флажок только атрибут read only не влияет на выполнение git pull. Существуют ли другие разрешения, которые могут иметь последствия? – SpencerRakoczy

0

Вы создаете локальную ветку, которая не является set-upstream-to с удаленной веткой.

Try:

git remote -v // To find out the name of your remote repository. 
git checkout -b yourLocalBranch //Create a branch in the place you are (master). 
git pull nameYourRemoteRepo/remoteBranchName yourLocalBranch // give from what remote and branch you want to pull. 

Или проще:

git fetch; git checkout -b yourLocalBranch yourRemoteRepoName/remoteBranch 
+0

В моем источнике установлено имя удаленного репозитория, из которого связана ветка. Похоже, что мой восходящий поток совпадает с моим происхождением, верно? – SpencerRakoczy

+0

Просто, чтобы прояснить, я увидел, что, выполняя git remote -v.Он возвращает начало [email protected]: myUserName/myRemoteRepoName (выборка и push) и вверх по потоку [email protected]: myUserName/myRemoteRepoName (выборка и push) – SpencerRakoczy

+0

Да. По умолчанию репо от вас клонирует ваше происхождение. Тогда, где я написал myRemoteRepoName, это происхождение. – blashser

Смежные вопросы