2011-12-20 2 views
1

GIT версии 1.7.7.4Ветви еще различия после слияния

У меня есть две ветви development и testing.

Первоначально testing создано: development.

Я работал только с testing. Так что теперь моя ветка testing имеет множество отличий по сравнению с development.

Поскольку у testing появились мои последние изменения, я хочу сделать development так же, как и тестирование.

Таким образом, я сделал следующее, чтобы объединить их.

git checkout development 
git merge -s recursive -Xtheirs testing 

Однако, когда я получаю разницу между двумя ветвями. Есть еще много различий.

Поэтому я решил сбросить development ветки и попробуйте еще раз, выполнив следующие действия:

git merge testing 

Однако, я все еще получаю то же различие.

Если я попытаюсь снова слиться без реселлера. Я получаю already up-to-date.

Есть ли способ, которым я могу сделать ветку development так же, как и testing?

Большое спасибо за любые советы,

ответ

1

После слияния development на testing, development получит все изменения от testingtesting, но не будет иметь ни один из изменений на development. График будет выглядеть примерно так:

* bc6339d - (HEAD, development) Merge branch 'testing' 
|\ 
| * 588c9a3 - (testing) commit message 
* | 2d484f2 - another commit 

Смотрите, testing и development находятся на разных ревизиях.

Чтобы объединить их, они имеют одни и те же изменения, которые вы могли бы сделать:

git checkout development 
git merge -Xtheirs testing 
git checkout testing 
git merge development 

График теперь должен выглядеть следующим образом:

* bc6339d - (HEAD, testing, development) merge branch 'testing' 
|\ 
| * 588c9a3 - commit message 
* | 2d484f2 - another commit 

Если вы хотите, чтобы держать их отдельно, сделать git merge --no-ff development.

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