Bug#720896: git: failed command: git merge-base refs/remotes/dgit/dgit/sid HEAD

2013-08-26 Thread Ian Jackson
retitle 720896 Poor error message for non-fast-forwarding push
thanks

Joey Hess writes (Bug#720896: git: failed command: git merge-base 
refs/remotes/dgit/dgit/sid HEAD):
 I am trying to release alien using dgit. In a clone of the upstream
 git repository, I ran `dgit fetch`, which added the dgit repository
 correctly. Then still in my upstream master branch, I did a
 `dgit build -tc`, which succeeded. Then `dgit push` failed:
...
 git: failed command: git merge-base refs/remotes/dgit/dgit/sid HEAD
 dgit: subprocess failed with error exit status 1
 - exit 1

This error message isn't very good.

 So it seems dgit wants the HEAD when pushing to be connected to the dgit/sid
 branch. However, dgit fetch did not do that. I can (and now have) done it
 on my own[1], but I wonder if a) this requirement makes sense and b) should
 fetch do it automatically?

Yes.  dgit fetch doesn't do that.  Maybe you wanted dgit pull.

The requirement that the dgit history is fast-forwarding is mentioned
several times in the manpage.

In principle there is no need for that to be true for dgit to work,
but I had to make a choice between two possible gitish views of the
world.  I chose the one that makes the workflow dgit pull; edit; dgit
push work.

Ian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#720896: git: failed command: git merge-base refs/remotes/dgit/dgit/sid HEAD

2013-08-26 Thread Joey Hess
Ian Jackson wrote:
 Yes.  dgit fetch doesn't do that.  Maybe you wanted dgit pull.

Indeed I did.

-- 
see shy jo


signature.asc
Description: Digital signature


Bug#720896: git: failed command: git merge-base refs/remotes/dgit/dgit/sid HEAD

2013-08-25 Thread Joey Hess
Package: dgit
Version: 0.11
Severity: normal

I am trying to release alien using dgit. In a clone of the upstream
git repository, I ran `dgit fetch`, which added the dgit repository
correctly. Then still in my upstream master branch, I did a
`dgit build -tc`, which succeeded. Then `dgit push` failed:

joey@gnu:~/src/aliendgit push
canonical suite name for unstable is sid
downloading http://ftp.debian.org/debian//pool/main/a/alien/alien_8.88.dsc...
downloading http://ftp.debian.org/debian//pool/main/a/alien/alien_8.88.dsc...
last upload to archive has NO git hash
dget: retrieving http://ftp.debian.org/debian//pool/main/a/alien/alien_8.88.dsc
  % Total% Received % Xferd  Average Speed   TimeTime Time  Current
 Dload  Upload   Total   SpentLeft  Speed
100  1436  100  14360 0802  0  0:00:01  0:00:01 --:--:--   803
dget: retrieving 
http://ftp.debian.org/debian//pool/main/a/alien/alien_8.88.tar.gz
  % Total% Received % Xferd  Average Speed   TimeTime Time  Current
 Dload  Upload   Total   SpentLeft  Speed
 94 64380   94 605830 0   1644  0   94 64380   94 605830 0  
 1600  0   94 64380   94 605830 0   1559  0   94 64380   94 
605830 0   1520  0   94 64380   94 605830 0   1483  0   
94 64380   94 605830 0   1447  0   94 64380   94 605830 0   
1413  0   94 64380   94 605830 0   1381  0   94 64380   94 
605830 0   1350  0   94 64380   94 605830 0   1321  0   
94 64380   94 605830 0   1292  0   94 64380   94 605830 0   
1265  0   94 64380   94 605830 0   1239  0   94 64380   94 
605830 0   1214  0   94 64380   94 605830 0   1191  0   
94 64380   94 605830 0   1168  0   94 64380   94 605830 0   
1145  0   96 64380   96 620310 0   1171  0   98 64380   98 
634790 0   1176  0  100 64380  100 643800 0   1184  0  
0:00:54  0:00:54 --:--:--  1090
alien_8.88.dsc:
  Good signature found
   validating alien_8.88.tar.gz
All files validated successfully.
dpkg-source: info: extracting alien in alien-8.88
dpkg-source: info: unpacking alien_8.88.tar.gz
synthesised git commit from .dsc 8.88
HEAD is now at f545de1 
git: failed command: git merge-base refs/remotes/dgit/dgit/sid HEAD
dgit: subprocess failed with error exit status 1
- exit 1

So it seems dgit wants the HEAD when pushing to be connected to the dgit/sid
branch. However, dgit fetch did not do that. I can (and now have) done it
on my own[1], but I wonder if a) this requirement makes sense and b) should
fetch do it automatically?

[1] using `git merge -s ours remotes/dgit/dgit/sid`

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 3.10-2-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages dgit depends on:
ii  devscripts  2.13.2
ii  dpkg-dev1.17.1
ii  git [git-core]  1:1.8.4~rc2-1
ii  git-core1:1.8.4~rc2-1
ii  libdpkg-perl1.17.1
ii  libwww-perl 6.05-1
ii  perl5.14.2-21
ii  realpath1.18

Versions of packages dgit recommends:
ii  openssh-client [ssh-client]  1:6.2p2-6

Versions of packages dgit suggests:
pn  sbuild  none

-- no debconf information

-- 
see shy jo


signature.asc
Description: Digital signature