Hi Andrew,

I have a question about how buildfarm works with git, could you please help? We use buildfarm locally at PGPro to test our branches, and it breaks when I rebase and force push to the repository. To get the remote changes, buildfarm does 'git checkout .' followed by 'git pull', and the latter breaks when the remote branch was rebased.

I was wondering if the buildfarm really has to do 'git pull'? Pull is supposed to be used to integrate local changes with remote ones, but buildfarm doesn't have any local changes, does it? It just has to checkout the remote branch as-is. To do that, when the state of working directory is not know, I'd do the following commands:

git fetch # get the remote changes
git checkout -f <remote>/<branch> # checkout the needed remote branch; on conflict, use the remote files
git reset --hard # revert all modifications in tracked files
git clean -xfd # recursively delete all unversioned and ignored files

Do you think this approach is correct or am I missing something?

--
Alexander Kuzmenkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company


Reply via email to