From: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
To: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
Cc: Aaron Davies <aaron.davies@gmail.com>, git@vger.kernel.org
Subject: Re: newb questions: post-cherry-pick status cleanup, shared local repository permissions
Date: Mon, 30 Mar 2009 06:30:09 +0200 [thread overview]
Message-ID: <20090330043009.GB12907@vidovic> (raw)
In-Reply-To: <20090330042226.GA12907@vidovic>
On Mon, Mar 30, 2009 at 06:22:26AM +0200, Nicolas Sebrecht wrote:
>
>
> On Mon, Mar 30, 2009 at 11:03:28AM +0800, Aaron Davies wrote:
> >
> > hi, i'm new to git, and have a couple questions which are probably
> > very stupid and/or indicate that i've been doing it wrong.
> >
> > first, a couple words about my setup/workflow: i'm currently sole
> > developer on a project which may at some point get some other coders.
> > the environment is three linux boxes, one for development and two for
> > production, and three accounts, mine, dev, and prod. all homedirs are
> > hosted on the network and are accessible from all three boxen.
> >
> > i have a "central" (i.e. bare) repository stored in dev's homedir, and
> > regular copies in all three homedirs. the language involved is
> > interpreted, so the code tree is the deployment.
> >
> > my main workflow is to hack on a branch in my homedir, then merge and
> > push when i have a feature ready. then i go to the dev account and
> > pull, which constitutes dev deployment. once it's thoroughly tested, i
> > do the same in the prod account.
>
> Looks sane.
>
> That said, you could also work on branches (all in "homedir") for the
> 'working on feature' -> testing (dev) -> ready (prod)
> workflow.
>
> > now, the questions: an exception to this workflow occurred a couple
> > months ago, when i made some urgent bugfixes that needed to move to
> > prod before other stuff that was currently being tested in dev. this
> > was done via cherry-picking some specific commits into prod. now, in
> > prod, when i do "git status", it says "# Your branch is ahead of
> > 'origin/master' by 8 commits." is there an easy way to get rid of
> > this?
>
> What I would do is working on "TOPIC" branches. By this way, the bare,
> dev and prod repositories would not "know" of all the commits from mine
> but only the urgent fixes.
>
> in "mine":
> - step 1
> $ git checkout -b bugfixes master
>
> - step 2
> $ git cherry-pick blabla
> (and/or <hack, hack, hack>)
>
> - step 3
> $ git checkout master
> $ git merge bugfixes
>
> - step 4
> $ git push origin master:master (to the bare repo)
>
> - step 5
> $ git branch -d bugfixes
> $ git checkout myworking
> $ git rebase myworking master
My bad:
$ git rebase master
> At step 1, we create the new bugfixes branch from master:
> (bugfixes)
> /
> o-o-o (master)
> \
> a-b-c-d (myworking)
>
> At step 2, we fix the bugs (cherry-picking and hack):
> a-c-y-z (bugfixes)
> /
> o-o-o (master)
> \
> a-b-c-d (myworking)
>
> At step 3, we merge the urgent fixes into master:
> a-c-y-z (bugfixes)
> /
> o-o-o-a-c-y-z (master)
> \
> a-b-c-d (myworking)
>
> At step 4, we push the urgent work as usual pushes.
> At step 5, we come back to the usual work:
>
> o-o-o-a-c-y-z (master)
> \
> b'-d' (myworking)
Then, you update dev and prod as usual from bare.
--
Nicolas Sebrecht
prev parent reply other threads:[~2009-03-30 4:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-30 3:03 newb questions: post-cherry-pick status cleanup, shared local repository permissions Aaron Davies
2009-03-30 4:22 ` Nicolas Sebrecht
2009-03-30 4:30 ` Nicolas Sebrecht [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090330043009.GB12907@vidovic \
--to=nicolas.s-dev@laposte.net \
--cc=aaron.davies@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).