Re: No merge strategy handled the merge (git version 1.1.GIT)
- From
- Roberto Nibali <ratz@drugphish.ch>
- Date
- Jan 29, 2006, 23:42 UTC
- Message-ID
- <43DD52ED.7090503@drugphish.ch>
- In-Reply-To
- <20060129120344.GB4815@c165.ib.student.liu.se>
Show 13 quoted lines
>> raise ProgramError(progStr, e.strerror) >> ProgramError: merge -L HEAD/net/ipv4/ipvs/ip_vs_ctl.c -L >> orig/net/ipv4/ipvs/ip_vs_ctl.c -L >> 3ee68c4af3fd7228c1be63254b9f884614f9ebb2/net/ipv4/ipvs/ip_vs_ctl.c >> .merge_file_uofMwv .merge_file_hcesLs .merge_file_TwtEqw: No such file >> or directory >> No merge strategy handled the merge. >> > > The problem is that merge(1), which is used for file-level merges, > couldn't be found. Is it installed on your system? If you use Linux, > it is usually found in the "rcs" package in your favorite > distribution.
That's it, I've installed it now.
> This have came up a couple of times now, we should probably make this > error message a bit less cryptic. I will send a patch in a separate > mail.
Thanks.
Show 8 quoted lines
> If your repository is in the state that the failed git-pull left it > in, then the following actions should merge your changes with Linus' > tree. > > 1. Install merge(1) > 2. Run 'git reset --hard' (NOTE: Be careful with this command. It will > revert any uncommitted changes you may have in your working directory!) > 3. Run 'git pull'
This worked. And as you've mentioned, I lost the uncommitted changes.
Show 6 quoted lines
>> Oh, btw, how is git branch -D supposed to work? Isn't there some code >> missing? > > Could you be a bit more specific? Do you mean that there is code > missing in git-branch.sh? What happens when you run 'git branch -D > <some branch>'? It seems to work fine here.
Well, I was trying to understand git a bit better, so I started reading the source code and just found that -D wasn't documented on my system, even after a
git clone rsync://git.kernel.org/pub/scm/git/git.git/ GIT_HEAD
I'm talking about following excerpt which I've looked at for 2 minutes:
#!/bin/sh
USAGE='[-d <branch>] | [[-f] <branch> [start-point]]' LONG_USAGE='If no arguments, show available branches and mark current branch with a star. If one argument, create a new branch <branchname> based off of current HEAD. If two arguments, create a new branch <branchname> based off of <start-point>.'
SUBDIRECTORY_OK='Yes' . git-sh-setup
headref=$(git-symbolic-ref HEAD | sed -e 's|^refs/heads/||')
delete_branch () {
option="$1"
shift
for branch_name
do
case ",$headref," in
",$branch_name,")
die "Cannot delete the branch you are on." ;;
,,)
die "What branch are you on anyway?" ;;
esac
branch=$(cat "$GIT_DIR/refs/heads/$branch_name") &&
branch=$(git-rev-parse --verify "$branch^0") ||
die "Seriously, what branch are you talking about?"
case "$option" in
-D)
;;
[...]This is slightly confusing, since I didn't see the shift after delete_branch so it looked like a noop. On top of that "-D" did/does not seem to be documented. Skimming over your patch you've sent later to this list, it appears you've fixed the documentation.
Best regards, Roberto Nibali, ratz
-- echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc