Trying really trivial in-index merge... - fatal: Merge requires file-level merging - Nope. - ... - Auto-merging hello +Auto-merging hello CONFLICT (content): Merge conflict in hello Automatic merge failed; fix up by hand
From edd2b0a4fa552d711bcf7561dead9c6c87146701 Mon Sep 17 00:00:00 2001
From: Junio C Hamano
Trying really trivial in-index merge... - fatal: Merge requires file-level merging - Nope. - ... - Auto-merging hello +Auto-merging hello CONFLICT (content): Merge conflict in hello Automatic merge failed; fix up by hand
which is way too verbose, but it basically tells you that it failed the -really trivial merge ("Simple merge") and did an "Automatic merge" -instead, but that too failed due to conflicts in hello.
+It tells you that it did an "Automatic merge", which +failed due to conflicts in hello.
Not to worry. It left the (trivial) conflict in hello in the same form you should already be well used to if you've ever used CVS, so let's just open hello in our editor (whatever that may be), and fix it up somehow. @@ -1357,37 +1352,15 @@ course, you will pay the price of more disk usage to hold multiple working trees, but disk space is cheap these days. -
- Note
- |
-You could even pull from your own repository by -giving . as <remote-repository> parameter to git pull. This -is useful when you want to merge a local branch (or more, if you -are making an Octopus) into the current branch. | -
It is likely that you will be pulling from the same remote repository from time to time. As a short hand, you can store -the remote repository URL in a file under .git/remotes/ -directory, like this:
-$ mkdir -p .git/remotes/ -$ cat >.git/remotes/linus <<\EOF -URL: http://www.kernel.org/pub/scm/git/git.git/ -EOF-
and use the filename to git pull instead of the full URL. -The URL specified in such file can even be a prefix -of a full URL, like this:
+the remote repository URL in the local repository's config file +like this:$ cat >.git/remotes/jgarzik <<\EOF -URL: http://www.kernel.org/pub/scm/linux/git/jgarzik/ -EOF+
$ git repo-config remote.linus.url http://www.kernel.org/pub/scm/git/git.git/
and use the "linus" keyword with git pull instead of the full URL.
Examples.
-git pull jgarzik/netdev-2.6.git/ e100 -
-the above are equivalent to:
-git pull http://www.kernel.org/pub/…/jgarzik/netdev-2.6.git e100 -
-Prepare your work repository, by git clone the public repository of the "project lead". The URL used for the - initial cloning is stored in .git/remotes/origin. + initial cloning is stored in the remote.origin.url + configuration variable.
You can make sure git show-branch matches the state before those two git merge you just did. Then, instead of running -two git merge commands in a row, you would pull these two +two git merge commands in a row, you would merge these two branch heads (this is known as making an Octopus):
$ git pull . commit-fix diff-fix +$ git merge commit-fix diff-fix $ git show-branch ! [commit-fix] Fix commit message normalization. ! [diff-fix] Fix rename detection. @@ -1992,7 +1957,7 @@ $ git show-branch
Note that you should not do Octopus because you can. An octopus is a valid thing to do and often makes it easier to view the -commit history if you are pulling more than two independent +commit history if you are merging more than two independent changes at the same time. However, if you have merge conflicts with any of the branches you are merging in and need to hand resolve, that is an indication that the development happened in @@ -2004,7 +1969,7 @@ to follow, not easier.