John Ralls-2 wrote > > On Aug 21, 2012, at 8:01 AM, reubano <reubano@> wrote: > >> I propose the current git wiki[1] be edited. Right now it says "If you >> have a >> Github account, it turns out that Github's "fork" feature doesn't play >> well >> with the Gnucash repository because of its unusual structure (which in >> turn >> is needed to synch it with subversion)." This doesn't make it clear that >> forking is ok in some circumstances.[2] >> >> And if I'm understanding things, I should be able to: >> fork >> clone (my personal fork) > > git remote add gc git://github.com/Gnucash/gnucash.git #See > https://help.github.com/articles/syncing-a-fork > >> git branch -t master refs/remotes/origin/trunk >> git branch working >> <write code> > > make && make check # Don't commit broken code > git commit -a # Git won't let you do > anything until you commit your tree > git checkout master > git pull remotes/gc/trunk # Otherwise the next step won't > do anything > >> git rebase master working > > git format-patch master # Git format-patch needs a > starting ref for format-patch > >> git push -u origin master >> ... >> >> Is this correct? > > Almost. I've added/changed some steps. Note that the github doc I reffed > above uses git fetch and git merge separately; git pull does both steps at > once.
Ok, so for completeness this should be the full set of steps fork clone # Clone personal fork for offline development git remote add gc git://github.com/Gnucash/gnucash.git #See https://help.github.com/articles/syncing-a-fork git branch -t master refs/remotes/origin/trunk git branch working <write code> make && make check # Don't commit broken code git commit -a # Git won't let you do anything until you commit your tree git checkout master git pull remotes/gc/trunk # Otherwise the next step won't do anything git rebase master working git format-patch master # Git format-patch needs a starting ref for format-patch git push -u origin master John Ralls-2 wrote > > On Aug 21, 2012, at 8:01 AM, reubano <reubano@> wrote: > >> My suggestion is to have 'Basic (GitHub) Set-Up' and 'Advance (Non >> GitHub) >> Set-Up' sections to accommodate the cloning differences, i.e., >> git clone git://github.com/Gnucash/gnucash.git >> git remote add myname-github <remote server>:myname/gnucash.git > > Huh? You shouldn't clone Gnucash/gnucash.git and then push back to a new > github repo: That new repo's title won't show that it's forked from > Gnucash/gnucash and the "Network" stuff won't work. I agree that you should need to clone Gnucash/gnucash.git but I was just repeating the wiki instructions[1] wiki wrote > > Just clone the repository as usual: > > git clone git://github.com/Gnucash/gnucash.git > > <snip> > > Instead, create a repository in your account (you can name it whatever you > like, but calling it Gnucash is likely to minimize confusion), then clone > the Gnucash/gnucash repository on your local computer. Add your Github > Gnucash repo as a remote > > git remote add myname-github g...@github.com:myname/gnucash.git [1] http://wiki.gnucash.org/wiki/Git#Non-Committers At any rate, I think it is a moot point if we recommend forking and just remove this step altogether. John Ralls-2 wrote > > On Aug 21, 2012, at 8:01 AM, reubano <reubano@> wrote: > >> vs >> fork >> git clone https://github.com/user/gnucash.git (just list HTTPS >> assuming >> those who want SSH will already know how to do it) >> >> And then have a 'Contributing Code' section beginning with branching >> instructions. *OR* to make it even simpler, just list everything for a >> GitHub setup first and at the end add a note for those who don't use >> GitHub >> to clone and 'git remote add'. > > You seem not to have grokked that we're not really interested in > integrating with Github's way of doing things, setting aside that they > keep changing it. For example, the *last* time I looked, you could sync a > fork from the website, which is what didn't play well with the git-svn > bridge. That's gone and you have to do it locally as described above. I'm > not sure that we want to encourage people to publish their forks on > Github, or anywhere else. Accounting software isn't a domain where > fast-and-loose development is a good idea. I understand that there is no intention on integrating with github pull requests and issues. What I am concerned about is making it easy for developers to contribute. In support of this, I think forking and following the steps above provides that. -- View this message in context: http://gnucash.1415818.n4.nabble.com/Non-commiter-github-workflow-tp4656382p4656402.html Sent from the GnuCash - Dev mailing list archive at Nabble.com. _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel