Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
Kafka >> mail # dev >> git workflow

Jay Kreps 2013-01-02, 21:45
Jun Rao 2013-01-03, 16:18
Joe Stein 2013-01-05, 04:35
Jay Kreps 2013-01-05, 05:30
Joe Stein 2013-01-05, 05:41
David Arthur 2013-01-05, 17:38
Joe Stein 2013-01-05, 18:43
Joe Stein 2013-01-05, 19:02
Joe Stein 2013-01-06, 05:36
Derek Chen-Becker 2013-01-07, 05:52
David Arthur 2013-01-07, 14:45
Derek Chen-Becker 2013-01-07, 15:06
Jay Kreps 2013-01-07, 16:07
Derek Chen-Becker 2013-01-07, 16:33
Copy link to this message
Re: git workflow
Here is what I've been doing

* Clone Kafka locally (git clone git://github.com/apache/kafka.git)
* Create feature branch off of trunk (git branch KAFKA-657)
* Do work on the feature branch
* Rebase from trunk (git rebase trunk). This minimizes or eliminates any
conflicts when people try to apply your patch.
* Generate a diff like: git diff HEAD~5 > KAFKA-657v7.diff (this
essentially squashes all my commits into one diff)

To apply a patch and test I would (in theory), create a local branch
from trunk (e.g., KAFKA-657-integration), apply the patch (git apply
KAFKA-657v7.diff), and test the patch.

Another approach would be to use the built-in Git patch stuff (git
format-patch and git am). git format-patch will create a patch file per
commit, which may or may not be what you want.

Pushing local changes to a fork in GitHub is also pretty simple. You
just need to have both GitHub repositories set up as remotes in your
local repository. E.g., add your GitHub fork as a separate remote "git
remote add mumrah [EMAIL PROTECTED]:mumrah/kafka.git", then push your
feature branch to it "git push mumrah KAFKA-675"

On 1/2/13 4:45 PM, Jay Kreps wrote:
> I don't know about other people but I find git kind of confusing. I thought
> it would be useful to try to document the normal workflow for different use
> cases:
> 1. Contributing a patch
> 2. Reviewing and integrating a patch that is contributed
> 3. Doing development as a committer
> 4. Keeping a copy of your local work on github (since it doesn't seem
> Apache has a place to keep local backups of work in progress).
> https://cwiki.apache.org/confluence/display/KAFKA/Git+Workflow
> I would like to link this up from the contributor page to help people
> (including my future self). Objections?
> I am not a git expert, so any feedback to improve these recipes or bug
> fixes (since I haven't tried everything) would be very much appreciated. If
> you are about to do one of the above things, try the recipe and see if it
> can be improved.
> Cheers,
> -Jay
Jay Kreps 2013-01-03, 00:03
David Arthur 2013-01-03, 00:26