Как раз тогда, когда я подумал, что разобрался с git checkout -b newbranch - commit / commit / commit - git checkout master - git merge newbranch - git rebase -i master - git push рабочий процесс в git, что-то взорвалось, и я не вижу причин для этого.
Вот общий рабочий процесс, который работал у меня в прошлом:
# make sure I'm up to date on master:
$ git checkout master
$ git pull # k, no conflicts
# start my new feature
$ git checkout -b FEATURE9 # master @ 2f93e34
Switched to a new branch 'FEATURE9'
... работа, фиксация, работа, фиксация, работа, фиксация ...
$ git commit -a
$ git checkout master
$ git merge FEATURE9
$ git rebase -i master # squash some of the FEATURE9 ugliness
Хорошо, пока; теперь я ожидаю увидеть - и обычно вижу - это:
$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
nothing to commit (working directory clean)
Но вместо этого я вижу только « ничего не нужно фиксировать (рабочий каталог очищен) », нет « Ваша ветка впереди ' Я просто получаю ответ «уже обновлен», хотя git branch -a -v показывает, что локальный мастер опережает / remotes / origin / master. Вот результат работы git pull и git remote -v соответственно:
$ git pull
From .
* branch master -> FETCH_HEAD
Already up-to-date.
$ git remote -v
origin git@git.company.com:proj.git (fetch)
origin git@git.company.com:proj.git (push)
Приложение 2 : Похоже, мой локальный мастер настроен на push к пульту, но не тянуть с него. После выполнения для удаленного в 'git branch -r | grep -v master '; сделать git checkout --track $ remote; done
, вот что у меня есть. Кажется, мне просто нужно, чтобы мастер снова вытаскивал из пультов / origin / master, не так ли?
$ git remote show origin
* remote origin
Fetch URL: git@git.company.com:proj.git
Push URL: git@git.company.com:proj.git
HEAD branch: master
Remote branches:
experiment_f tracked
master tracked
Local branches configured for 'git pull':
experiment_f merges with remote experiment_f
Local refs configured for 'git push':
experiment_f pushes to experiment_f (up to date)
master pushes to master (local out of date)