[U-Boot-Users] GIT merge

Hi custodians, I look at http://www.denx.de/wiki/UBoot/CustodianGitTrees and I need made merge with u-boot mainline.
I hit againts conflict.
[microblaze@monstr tmp]$ git clone git://www.denx.de/git/u-boot-microblaze.git Initialized empty Git repository in /tmp/u-boot-microblaze/.git/ remote: Generating pack... remote: Done counting 33899 objects. remote: Deltifying 33899 objects. remote: 100% (33899/33899) done Indexing 33899 objects. remote: Total 33899 (delta 26150), reused 33319 (delta 25618) 100% (33899/33899) done Resolving 26150 deltas. 100% (26150/26150) done Checking files out... 100% (4605/4605) done
[microblaze@monstr tmp]$ cd u-boot-microblaze/
[microblaze@monstr u-boot-microblaze]$ git checkout master Switched to branch "master"
[microblaze@monstr u-boot-microblaze]$ git checkout -b merge Switched to a new branch "merge"
[microblaze@monstr u-boot-microblaze]$ git pull git://www.denx.de/git/u-boot.git remote: Generating pack... remote: Done counting 2881 objects. remote: Result has 2435 objects. remote: Deltifying 2435 objects. remote: 100% (2435/2435) done Indexing 2435 objects. remote: Total 2435 (delta 1950), reused 1971 (delta 1512) 100% (2435/2435) done Resolving 1950 deltas. 100% (1950/1950) done 264 objects were added to complete this thin pack. 100% (5075/5075) done Auto-merged README Removed board/mpc8641hpcn/pixis.c Removed board/stamp/Makefile Auto-merged common/Makefile Removed cpu/at32ap/at32ap7000/devices.c Removed cpu/at32ap/device.c Removed cpu/bf533/cplbhdlr.S Removed cpu/bf533/cplbmgr.S Auto-merged cpu/microblaze/start.S Removed include/asm-avr32/arch-at32ap7000/platform.h Removed include/asm-blackfin/cplbtab.h Removed include/asm-blackfin/cpu/cdefBF53x.h Removed include/asm-blackfin/page.h Removed include/configs/ezkit533.h Auto-merged include/configs/ml401.h Removed include/configs/stamp.h Auto-merged include/configs/xupv2p.h Auto-merged include/linux/stat.h CONFLICT (content): Merge conflict in include/linux/stat.h Automatic merge failed; fix conflicts and then commit the result.
I had problem with stat.h file. I resolve merge conflict (with vi) and then I tryied start pull second time but without success. On website is written "Before you request a pull, make sure there are no merge conflicts with the mainline". OK I change this file in microblaze repository and automatic merge work fine. But I have to add change stat.h to microblaze repository. Does command exist for finding merge conflict?
And second thing after automatic merge is added all patches from u-boot mainline. Is it right way? Do you require add only one line with merge www.denx.de/git/u-boot.git or the all patches? (What is the best command?)
Best regards Michal Simek

On 5/7/07, Michal Simek monstr@seznam.cz wrote:
Automatic merge failed; fix conflicts and then commit the result.
I had problem with stat.h file. I resolve merge conflict (with vi) and then I tryied start pull second time but without success.
You shouldn't pull again, you should do what the error message says and commit (after updating the index with your change.)
On website is written "Before you request a pull, make sure there are no merge conflicts with the mainline". OK I change this file in microblaze repository and automatic merge work fine. But I have to add change stat.h to microblaze repository. Does command exist for finding merge conflict?
git status shows "unmerged" files, i.e. files with conflict markers.
And second thing after automatic merge is added all patches from u-boot mainline. Is it right way? Do you require add only one line with merge www.denx.de/git/u-boot.git or the all patches? (What is the best command?)
I'm not sure what you mean. git pull usually does the right thing -- it pulls in all commits from the remote branch and adds one of its own to record the merge.
IMO, if the pull was clean you might as well blow it away using git-reset before you request a pull to make the upstream history a bit cleaner. But I'm not sure if Wolfgang agrees with this.
Haavard

In message 1defaf580705070516o5770da97u35c91aac6212424a@mail.gmail.com you wrote:
IMO, if the pull was clean you might as well blow it away using git-reset before you request a pull to make the upstream history a bit cleaner. But I'm not sure if Wolfgang agrees with this.
I have to admit that I'm still pretty ignorant about git. So far I've been using cogito exclusively, and the thought that I have to abdicate it still has to sink in :-(
I guess I will soon start asking similar questions...
Best regards,
Wolfgang Denk

Håvard Skinnemoen wrote:
On 5/7/07, Michal Simek monstr@seznam.cz wrote:
Automatic merge failed; fix conflicts and then commit the result.
I had problem with stat.h file. I resolve merge conflict (with vi) and then I tryied start pull second time but without success.
You shouldn't pull again, you should do what the error message says and commit (after updating the index with your change.)
On website is written "Before you request a pull, make sure there are no merge conflicts with the mainline". OK I change this file in microblaze repository and automatic merge work fine. But I have to add change stat.h to microblaze repository. Does command exist for finding merge conflict?
git status shows "unmerged" files, i.e. files with conflict markers.
And second thing after automatic merge is added all patches from u-boot mainline. Is it right way? Do you require add only one line with merge www.denx.de/git/u-boot.git or the all patches? (What is the best command?)
I'm not sure what you mean. git pull usually does the right thing -- it pulls in all commits from the remote branch and adds one of its own to record the merge.
IMO, if the pull was clean you might as well blow it away using git-reset before you request a pull to make the upstream history a bit cleaner. But I'm not sure if Wolfgang agrees with this.
Haavard
FWIIW, I've found that, if I am in my custodian repo and in the "to be pushed" branch if I have a branch going, if I do a pull from the master repo git://www.denx.de/git/u-boot.git it pulls/merges the changes into my custodian repo (in the currently active branch) without creating a "merge" log entry. I have not had any merge conflicts, but I would expect if there are any, they can be resolved and committed to the custodian repo. The custodian repo should then apply cleanly to the master u-boot repo.
I've found that, if I do a pull in my "master" branch in the custodian repo, switch to my "to be pushed" branch, and pull from my (now up to date) "master" branch, it also Does The Right Thing, but creates an extra (superfluous) merge log.
IMHO, the superfluous merge log should be avoided because it adds noise with no value.
Best regards, gvb

I solved my problem. git-instaweb don't shown merge but gitk yes.
Commands: git pull git://www.denx.de/git/u-boot.git git stat resolve merge conficts git add conflict_files + git push to custodian repository. a then web checking
thanks Havard
Best regards Michal Simek
participants (4)
-
Håvard Skinnemoen
-
Jerry Van Baren
-
Michal Simek
-
Wolfgang Denk