From: Felipe Contreras Date: Thu, 06 May 2021 10:23:07 GMT Subject: Re: [feature suggestion] Add 'git stash export', 'git stash import' commands to allow to backup stash externally Message-ID: <6093c38b7ca62_325720884@natae.notmuch> In-Reply-To: Yuri wrote: > On 5/6/21 1:38 AM, Junio C Hamano wrote: > > Unlike centralized SCM like SVN and CVS, commits in Git are private > > until you make them public by pushing, and you do not allow other > > people to fetch/pull from the repository you actively work in. If > > your commits become public immediately after you make them, perhaps > > there is a room in your workflow for vast improvement. > > Let's say I make commit1, commit2, commit3 and then commit4. > > How can I push only commit1 and commit3, but not commit2 and commit4? You create a separate branch "for-upstream" based on the parent of commit 1. Then you chery-pick commit 1 and commit 3. You can leave the other branch as-is, and deal with that later, or you can rebaste that temporary branch on top of "for-upstream". Or you can rebase first, create a new branch from tmp~2, and then push it. > Can I permanently hold some commits from being pushed while pushing > others? Yes. -- Felipe Contreras