On Wed, 19 Aug 2015, Martin Winter wrote:
Let’s clarify this: There are obviously exceptions (i.e. where multiple
commits are required for something to work), but I expect that in this
case they would be bundled as a single commit in most cases.
The CI tool (I use Atlassian Bamboo, but from my testing Jenkins works
the same way), pick up on changes in the Git and will trigger a run.
“Changes”, not a single commit. So if 10 commits are pushed, then it
will only do a single run based on the latest one. I haven’t seen a good
way to change this in any CI system.
Well, on the commiters side, each commit is an individual commit.
Sometimes 1 commit in the git tree may be the result of a number of
commits (e.g. amending, rebases that edit or squash).
When trees are pushed, that could push a bunch of commits in one go.
So what you're asking is to push a commit at a time, and wait till the CI
has run before pushing the next?
Better would be to remember the last head the CI ran on, then after more
commits are pulled in, go through each commit and do the CI on each? E.g.
if abc123 was the last commit ID, then get the list of more recent
commits, checkout and run the CI in that with something like:
for COMMIT in $(git rev-list abc123..); do
git checkout $COMMIT && runci() || exit ...
done
?
So all I ask is committers to please not stack multiple commits and push in
smaller (preferable single commits)
blocks.
Is something like the above possible?
regards,
--
Paul Jakma [email protected] @pjakma Key ID: 64A2FF6A
Fortune:
Either I'm dead or my watch has stopped.
-- Groucho Marx's last words_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev