-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi
Dne Thu, 18 Mar 2010 10:02:05 +0100
Dieter Adriaenssens <dieter.adriaenssens(a)gmail.com> napsal(a):
$ git merge QA_3_3
Auto-merging ChangeLog
CONFLICT (content): Merge conflict in ChangeLog
Auto-merging Documentation.html
Auto-merging libraries/config.default.php
Auto-merging main.php
Auto-merging tbl_change.php
CONFLICT (content): Merge conflict in tbl_change.php
Automatic merge failed; fix conflicts and then commit the result.
I understand the automerge of Documentation.html and
libraries/config.default.php. They are probably different between
branches.
I understand why merging ChangeLog had difficulties, because I changed
something there.
I can imagine why main.php (the file I changed) merged without
problem, probably because that file was previously unchanged, so the
merge was no problem.
But what I don't understand is why the tbl_change.php caused problems.
I didn't touch that file, so as far as I'm concerned, that file should
have been correctly merged the previous time (commit before me).
Well the problem is that there was no merge for some changes and both
branches had these changes applied separately (and by different patch
because of different context) and in this case it is hard to tell which
one if correct and it causes conflict (in this case it was most likely
because of commits 8779405 and f0672d8).
After manualy changing the tbl_change.php and
ChangeLog file, I did this :
git add ChangeLog
git add tbl_change.php
(because git status instructed me to)
Well you should do this after resolving conflicts,
and then
git commit
git push
This resulted in these two commits :
Changed link to git repository on main page
Merge branch 'QA_3_3'
It then turned out I forgot to solve two conflicts in tbl_change.php
(indicated by >>>>>> HEAD and <<<<<< QA_3_3). I
changed this file and
commited again :
fix mistake in merge
Merge branch 'master' of ssh://phpmyadmin.git.sourcefor...
Because you seem to noticed this before pushing the changes, you could
have done git commit --ammend, what folds in changes into last commit.
(the last commit happened automaticaly when I did a
git pull, before
git push, because Marc had pushed a commit in the meanwhile)
Yes this is the reason for merge commit (you could have done git pull
- --rebase to avoid this merge commit because you did not publish your
changes so far).
I hope my answers clarify the situation at least a bit :-).
- --
Michal Čihař |
http://cihar.com |
http://blog.cihar.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEARECAAYFAkunNnAACgkQ3DVS6DbnVgT+EgCg3Ht7wltwfN+YKQYAADng91p3
4/AAoMIHF2UccmRQvzVjT2LXSRnKOBLX
=FEc7
-----END PGP SIGNATURE-----