Opened 3 years ago

Closed 3 years ago

#3886 closed defect (fixed)

Synchronization of Libadblockplus git repo with mercurial is broken.

Reported by: sergz Assignee: matze
Priority: P3 Milestone:
Module: Infrastructure Keywords:
Cc: fhd, rjeschke, matze Blocked By:
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description (last modified by sergz)

I have committed to mercurial into master bookmark but master branch on gihub repo of libadblockplus has not been updated.
Please compare commits https://hg.adblockplus.org/libadblockplus/rev/master and https://github.com/adblockplus/libadblockplus/commits/master.

In addition

  1. branch issue-3337-update-adblockplus is also not updated. I've rebased issue-3337-update-adblockplus in mercurial and used a forced push, but the branch in github has not been update to the right commit.
  1. after removing of bookmark issue-3337-update-adblockplus the corresponding branch in git is not removed.

Expected behaviour

Branches in github repository should be updated when any mercurial bookmark is changed.

Change History (6)

comment:1 Changed 3 years ago by matze

  • Owner set to matze
14:38 <sergz> matze: Hi! when could you take a look at https://issues.adblockplus.org/ticket/3886, it's quite essential, e.g. we cannot update dependencies file while git repo is not synchronized.
14:41 <matze> sergz: the issue is caused by your rebasing of that feature branch. no repository is configured to handle such cases, hence the update now rolls back the transaction when it comes to syncing that branch. i guess this just did not came to mind before. however, if my assumption is right we need to first define the expected behavior in such cases before i can tackle the ticket
14:41 <matze> fhd: ^ -- any comments?
14:42 <sergz> matze: OK, thank
14:43 <matze> sergz: in general i am not sure if the workflows fhd had in mind actually allow for forced updates at all. in the meantime you may pay me a visit and we can fix your particular sync issue manually for now

comment:2 Changed 3 years ago by sergz

I have rebased again, here is the log of operations, could be helpful to understand.

e:\projects\eyeo\hg\libadblockplus.push>hg up issue-3337-update-adblockplus
8 files updated, 0 files merged, 0 files removed, 0 files unresolved
(activating bookmark issue-3337-update-adblockplus)

e:\projects\eyeo\hg\libadblockplus.push>hg rebase -s issue-3337-update-adblockplus -d master
abort: can't rebase public changeset 61c292df5aef
(see "hg help phases" for details)

e:\projects\eyeo\hg\libadblockplus.push>hg rebase -k -s issue-3337-update-adblockplus -d master
rebasing 339:61c292df5aef "Issue 3337 - Update adblockplus reference in libadblockplus to revision hg:813682c7161e" (issue-3337-update-adblockplus)
merging dependencies

e:\projects\eyeo\hg\libadblockplus.push>hg outgoing
comparing with ssh://hg@hg.adblockplus.org/libadblockplus
searching for changes
changeset:   342:597c6056d85f
bookmark:    issue-3337-update-adblockplus
tag:         tip
user:        Sergei Zabolotskikh <serggzz@gmail.com>
date:        Wed Mar 02 16:16:29 2016 +0100
summary:     Issue 3337 - Update adblockplus reference in libadblockplus to revision hg:813682c7161e


e:\projects\eyeo\hg\libadblockplus.push>hg outgoing -B
comparing with ssh://hg@hg.adblockplus.org/libadblockplus
searching for changed bookmarks
   issue-3337-update-adblockplus 597c6056d85f

e:\projects\eyeo\hg\libadblockplus.push>hg push -B issue-3337-update-adblockplus
pushing to ssh://hg@hg.adblockplus.org/libadblockplus
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 1 changes to 1 files
remote: updating https://issues.adblockplus.org/ticket/3337
remote: Warning: Permanently added the RSA host key for IP address '192.30.252.121' to the list of known hosts.
remote: abort: pushing refs/heads/issue-3337-update-adblockplus overwrites 597c6056d85f
remote: abort: push creates new remote head 597c6056d85f with bookmark 'issue-3337-update-adblockplus'!
remote: (merge or see "hg help push" for details about pushing new heads)
updating bookmark issue-3337-update-adblockplus

e:\projects\eyeo\hg\libadblockplus.push>hg push -f -B issue-3337-update-adblockplus
pushing to ssh://hg@hg.adblockplus.org/libadblockplus
searching for changes
no changes found

comment:3 Changed 3 years ago by matze

Force-pushed to GitHub to solve this issue. Please note that we do NOT support re-basing with our synchronization mechanism yet, but need to define a strategy for such cases before we can implement that feature.

comment:4 Changed 3 years ago by sergz

  • Description modified (diff)

I have updated the issue, there is yet one trouble, the branch on github is not removed after removing of bookmark in mercurial.
JIC, please find the log of pushing commands

e:\projects\eyeo\hg\libadblockplus.push>hg push -B master
pushing to ssh://hg@hg.adblockplus.org/libadblockplus
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 0 changes to 0 files
remote: updating https://issues.adblockplus.org/ticket/3337
remote: abort: push creates new remote head 597c6056d85f with bookmark 'issue-3337-update-adblockplus'!
remote: (merge or see "hg help push" for details about pushing new heads)
updating bookmark master

e:\projects\eyeo\hg\libadblockplus.push>hg push -B issue-3337-update-adblockplus
pushing to ssh://hg@hg.adblockplus.org/libadblockplus
searching for changes
no changes found
deleting remote bookmark issue-3337-update-adblockplus

comment:5 Changed 3 years ago by matze

Also something not considered in the current approach, hence not supported yet.

@fhd We surely need to clarify the behavior intended, soon and in detail. The nuances start maturing from impediments to blockers..

comment:6 Changed 3 years ago by matze

  • Priority changed from Unknown to P3
  • Ready set
  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.