Re: merge vs. rebase question
From: Phil Hord <hidden>
Date: 2016-06-15 22:55:48
On Thu, Jan 17, 2013 at 9:14 AM, Dennis Putnam [off-list ref] wrote:
As a git noob I am having trouble understanding when to use which commands. I have a repository (bare) on my Linux server. I also created a build directory as a local repository. In my build script I do a 'git pull' to make sure the build directory is up to date. No changes are made to my source so this repository never does an 'add' or 'commit'. When I run my script with 'pull', the output indicates that changes were found and seems to have pulled them into the local directory. However, when I look at the resulting source, none of the expected changes show up. I then tried a 'fetch' and 'rebase'. That worked but I don't understand why. I thought 'pull' did a 'fetch' and a 'merge' so I don't understand why a 'fetch' and 'rebase' worked but 'fetch' and 'merge' did not. Unless my understanding of what 'pull' does is wrong. In my case, what should I be using in my script to assure that the build directory is current?
If your build directory never has any source changes or new commits, then pull is the right thing to do. You might want to use 'git pull --ff-only' to guarantee that your build directory is not creating merges unexpectedly. You did not provide enough information to help figure out why your pull is failing to achieve the results you expect. I suggest you perform the pull manually in your build directory. If it fails, git should tell you why. If it reports success but actually fails, you can post a detailed explanation of the problem here so someone can suggest the cause. Phil