Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Not a valid object name -p #5

Closed
manuel opened this Issue Dec 17, 2013 · 3 comments

Comments

Projects
None yet
2 participants

manuel commented Dec 17, 2013

Hi, git-integration seems to have a problem with Git 1.7.10.4 on Debian 7.

When I create an integration sheet like this:

base master
merge topic-1
merge topic-2

I get the following error:

$ git integration --edit --rebuild
usage: git stripspace [-s | --strip-comments] < input
fatal: Not a valid object name -p
Failed to write instruction sheet commit

manuel commented Dec 17, 2013

Digging in a bit, it seems to fail at git commit-tree

++ git commit-tree -p 32017b5390e155bb2fc4873a230127dddf316175 5d66d8047bc1e712ef3adf461a7a4da3a3d4cfb5
fatal: Not a valid object name -p

Here's a full `-x' output of the shell script:

mjs@hotel:~/prj/celos$ git integration --edit --rebuild
+ GIT_INTEGRATION_VERSION=0.1-36-gdbd6576
+ test --edit = --version
+ type git-sh-setup
+ SUBDIRECTORY_OK=Yes
+ OPTIONS_KEEPDASHDASH=
+ OPTIONS_SPEC='git integration --create  []
git integration [...] []
git integration (--continue | --abort)
--
 Actions:
create!    create a new integration branch
edit!      edit the instruction sheet for a branch
rebuild    rebuild an integration branch
cat!       show the instruction sheet for a branch
status!    show the status of a branch
abort!     abort an in-progress rebuild
continue!  continue an in-progress rebuild
 Inline actions:
add=       appends a '\''merge '\'' line to the instruction sheet
 Options:
autocontinue  continues automatically if rerere resolves all conflicts
prefix=       apply a prefix to each branch name when processing it
version!      print the version of git-integration
'
+ . git-sh-setup
++ unset CDPATH
++ GIT_QUIET=
++ test -n 'git integration --create  []
git integration [...] []
git integration (--continue | --abort)
--
 Actions:
create!    create a new integration branch
edit!      edit the instruction sheet for a branch
rebuild    rebuild an integration branch
cat!       show the instruction sheet for a branch
status!    show the status of a branch
abort!     abort an in-progress rebuild
continue!  continue an in-progress rebuild
 Inline actions:
add=       appends a '\''merge '\'' line to the instruction sheet
 Options:
autocontinue  continues automatically if rerere resolves all conflicts
prefix=       apply a prefix to each branch name when processing it
version!      print the version of git-integration
'
++ parseopt_extra=
++ '[' -n '' ']'
+++ echo 'git integration --create  []
git integration [...] []
git integration (--continue | --abort)
--
 Actions:
create!    create a new integration branch
edit!      edit the instruction sheet for a branch
rebuild    rebuild an integration branch
cat!       show the instruction sheet for a branch
status!    show the status of a branch
abort!     abort an in-progress rebuild
continue!  continue an in-progress rebuild
 Inline actions:
add=       appends a '\''merge '\'' line to the instruction sheet
 Options:
autocontinue  continues automatically if rerere resolves all conflicts
prefix=       apply a prefix to each branch name when processing it
version!      print the version of git-integration
'
+++ git rev-parse --parseopt -- --edit --rebuild
++ eval 'set -- --edit --rebuild --'
+++ set -- --edit --rebuild --
++ test -z ''
+++ git rev-parse --git-dir
++ GIT_DIR=.git
++ '[' -z Yes ']'
++ test -n .git
+++ cd .git
+++ pwd
++ GIT_DIR=/home/mjs/prj/celos/.git
++ : /home/mjs/prj/celos/.git/objects
++ case $(uname -s) in
+++ uname -s
+ set_reflog_action integration
+ '[' -z '' ']'
+ GIT_REFLOG_ACTION=integration
+ export GIT_REFLOG_ACTION
+ require_work_tree_exists
++ git rev-parse --is-bare-repository
+ test zfalse '!=' zfalse
+ cd_to_toplevel
++ git rev-parse --show-toplevel
+ cdup=/home/mjs/prj/celos
+ cd /home/mjs/prj/celos
+ test -n ''
+ LF='
'
+ _x40=00000
+ _x40=0000000000000000000000000000000000000000
++ cut -c1
++ git config --get core.commentchar
+ comment_char=
+ : '#'
++ git config --bool integration.autocontinue
+ autocontinue=
+ : false
++ git config --get integration.prefix
+ branch_prefix=
+ state_dir=/home/mjs/prj/celos/.git/integration
+ start_file=/home/mjs/prj/celos/.git/integration/start-point
+ head_file=/home/mjs/prj/celos/.git/integration/head-name
+ merged_file=/home/mjs/prj/celos/.git/integration/merged
+ prefix_file=/home/mjs/prj/celos/.git/integration/prefix
+ insns=/home/mjs/prj/celos/.git/integration/git-integration-insn
+ action=
+ do_create=0
+ do_edit=0
+ do_rebuild=auto
+ do_cat=0
+ do_status=0
+ branches_to_add=
+ need_rebuild=0
+ total_argc=3
+ test 3 '!=' 0
+ case "$1" in
+ do_edit=1
+ need_rebuild=1
+ shift
+ test 2 '!=' 0
+ case "$1" in
+ do_rebuild=1
+ shift
+ test 1 '!=' 0
+ case "$1" in
+ shift
+ break
+ test -n ''
+ case $action in
+ test -f /home/mjs/prj/celos/.git/integration/git-integration-insn
+ test -n ''
+ test 0 = 1
+ test 1 = 1
+ branch=
+ test 0 = 1
+ test 0 = 0
++ git symbolic-ref HEAD
+ branch=refs/heads/manuel_2013-12-17_integration
++ integration_ref refs/heads/manuel_2013-12-17_integration
++ local branch
++ branch=manuel_2013-12-17_integration
++ echo refs/insns/manuel_2013-12-17_integration
+ git rev-parse --quiet --verify refs/insns/manuel_2013-12-17_integration
+ test 0 = 0
+ test 1 = 1
+ integration_edit refs/heads/manuel_2013-12-17_integration 1 ''
+ branch=refs/heads/manuel_2013-12-17_integration
+ manual_edit=1
+ append_branches=
++ integration_ref refs/heads/manuel_2013-12-17_integration
++ local branch
++ branch=manuel_2013-12-17_integration
++ echo refs/insns/manuel_2013-12-17_integration
+ ref=refs/insns/manuel_2013-12-17_integration
+ edit_file=/home/mjs/prj/celos/.git/GIT-INTEGRATION-INSN
+ git rev-parse --quiet --verify refs/insns/manuel_2013-12-17_integration
+ git cat-file blob refs/insns/manuel_2013-12-17_integration:GIT-INTEGRATION-INSN
+ test -n ''
+ echo
+ git stripspace --comment-lines
usage: git stripspace [-s | --strip-comments] < input
+ test 1 '!=' 0
+ git_editor /home/mjs/prj/celos/.git/GIT-INTEGRATION-INSN
+ test -z ''
++ git var GIT_EDITOR
+ GIT_EDITOR=editor
+ eval editor '"$@"'
++ editor /home/mjs/prj/celos/.git/GIT-INTEGRATION-INSN
+ cat /home/mjs/prj/celos/.git/GIT-INTEGRATION-INSN
+ write_insn_sheet refs/insns/manuel_2013-12-17_integration
+ local ref parent insn_blob insn_tree op insn_commit
+ ref=refs/insns/manuel_2013-12-17_integration
+ git stripspace --strip-comments
++ git rev-parse --quiet --verify refs/insns/manuel_2013-12-17_integration
+ parent=32017b5390e155bb2fc4873a230127dddf316175
++ git rev-parse --quiet --verify 'refs/insns/manuel_2013-12-17_integration^{tree}'
+ parent_tree=624c2360085c3b665e69ea35576006090fff6c41
++ git hash-object -w --stdin
+ insn_blob=8037fe083b12acfc9caf35f77be4d522b1733f70
++ printf '100644 blob %s\t%s\n' 8037fe083b12acfc9caf35f77be4d522b1733f70 GIT-INTEGRATION-INSN
++ git mktree
+ insn_tree=2e5d1f7479231e61bdd4ea2f50efe1f29ddf1179
+ test 2e5d1f7479231e61bdd4ea2f50efe1f29ddf1179 = 624c2360085c3b665e69ea35576006090fff6c41
+ op=Update
+ : Update
++ echo 'Update integration branch refs/heads/manuel_2013-12-17_integration'
++ git commit-tree -p 32017b5390e155bb2fc4873a230127dddf316175 2e5d1f7479231e61bdd4ea2f50efe1f29ddf1179
fatal: Not a valid object name -p
+ insn_commit=
+ die 'Failed to write instruction sheet commit'
+ die_with_status 1 'Failed to write instruction sheet commit'
+ status=1
+ shift
+ echo 'Failed to write instruction sheet commit'
Failed to write instruction sheet commit
+ exit 1
+ exit
Owner

johnkeeping commented Dec 17, 2013

You need to use Git 1.8.2 or later because earlier versions do not support the --comment-lines option to git stripspace. I have a pending change to detect this and provide a nicer error message on my check-git-version branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment