[Debian-olpc-devel] Problem while updating sugar-read-activity

Jonas Smedegaard jonas at jones.dk
Thu Jul 22 19:46:18 UTC 2010


Hi Kandarp (and others),

On Thu, Jul 22, 2010 at 10:36:28PM +0530, Kandarp Kaushik wrote:

>I was trying to update sugar-read-activity to version 87 ( version 78
>present at git.debian.org  ), using the steps mentioned at :
>        http://paste.ubuntu.com/467584/

Nice detailed yet easy to follow report you posted at that pastebin.  
Great!

I would suggest, nowever, to include such report in the email itself 
another time, either inline or as attachment.  Unlike IRC, email does 
not get as cluttered by including details, and can be used offline.

This very issue I could have answered without going online[1] to fetch 
that pastebin web page, had the info been contained in the email.

Just a suggestion for small improvement of your already great report :-)


>but merging upstream with version 87 failed.
>
>
>I've tried to look for help but am not able to figure out whats going 
>wrong.
>
>Please let me know how can I solve the problem.

The cause of the problem is most likely that at some point in the past 
the upstream git derived from the contents of upstream tarballs - or 
perhaps some bogus commits was made to the "upstream" branch, not only 
merging from upstream git or importing tarballs.

You can manually adjust the files failing to merge automatically.  The 
contants should match the merged in upstream git, so you probably want 
to remove the upper parts and preseve to lower parts of merge hints in 
the files.  I believe this is not very crucial, however, as any errors 
here is shadowed anyway when afterwards importing the corresponding 
upstream tarball.

The safer apprach - which might also avoid the problem reappearing with 
future merges - is to "reset" the "upstream" branch to use upstream 
content:


git checkout -b v87 reset-upstream-to-v87
git merge --strategy ours upstream
git checkout upstream
git merge reset-upstream-to-v87
git branch -d reset-upstream-to-v87


Above commands first create a branch from the v87 tag, pseudo-merges 
HEAD of upstream branch into that, and then merges back the result on 
top of the "upstream" branch and cleans up the temporary branch.

The psudo-merge keeps current content but fakes that another branch have 
been merged into it. The git merge strategy "ours" does this, but lack 
the opposite which is what we really needed here - hence the juggling 
with a new branch so as we temporarily can be standing on the alien 
branch we want to keep and merge in the one we want to override.

Hmm.  Not sure this was very clearly described.  Perhaps read the 
section on MERGE STRATEGIES in "git merge --help".


Kind regards,

  - Jonas



[1] Obviously I go online to fetch my emails too, but separately: I 
mirror all my emails to my laptop using offlineimap, and often respond 
to emails while offline - e.g. sitting in a train or at places with 
unreliable internet access.

-- 
  * Jonas Smedegaard - idealist & Internet-arkitekt
  * Tlf.: +45 40843136  Website: http://dr.jones.dk/

  [x] quote me freely  [ ] ask before reusing  [ ] keep private
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/debian-olpc-devel/attachments/20100722/c38fd80e/attachment.pgp>


More information about the Debian-olpc-devel mailing list