I usually keep my master branch clean and only use it for pulling from upstream. > git pull upstream master When I want to, for example, contribute a new package, I will create a new branch from master. I usually name it after the package I'm creating. So, From my master branch: > git checkout -b newpkg If some time has passed since I've started, A day or two: > $ git pull --rebase upstream master When I think my package is ready for a pull request: > git commit -m "New package: newpkg-version git push -u origin newpkg If there are errors, fix them and then: > git commit --amend git push -f Anyways, this is my usual workflow. Hope this helps! On Thursday, September 17, 2015 at 3:21:28 AM UTC-4, Pierre Bourgin wrote: > > Hello there, > > I'm newbie with git. > I try to pull requests to void-packages (offer new packages) in a nice way > for the rewiever, ie with only one changeset. > > So I carefully read the usefull doc of PullMoll about git : > > https://github.com/voidlinux/documentation/wiki/How-to-use-git,-by-@pullmoll > > My question: Is there a chance to keep the distinct commits (several) in > my local repo, but combine them into a single changeset in my remote github > repo ("origin") ? > > I used "git rebase -i" on my local repo (squash) then push to remote. > So remote repo will contains a single changeset as expected ... > And there is only ONE changeset too in my local repo, since the "rebase" > happens on my local repo first. > > I've read various doc, but did not find anyhting like "git push --rebase" > for instance. > > Any clue ? > > Thanks - Pierre >