Daniel Campbell: > As a prospective Gentoo developer, having a guide around meant > specifically for Gentoo's practices would be incredibly helpful. I use > git in my own hobby development and learned from Pro Git, et al, but > it'd still be really nice to have, and give developers a place to > point to if a new developer is having troubles. > > Just my 2¢. >
First draft and only the basic ebuild workflow. 1. do the work (including removing files) 2. run 'repoman manifest' 3. stage files via 'git add <files>' (including removed ones) 4. run 'repoman full' and check for errors => if errors occur, fix them and continue from point 2 5. commit files via 'repoman commit -m "<message>"' 6. push to the dev repository via 'git push origin master' => if updates were rejected because of non-fast-forward push, try 'git pull --rebase=preserve origin master' first, then run 'repoman full' and continue from point 6. NOTE: you may skip running repoman another time if you have manually verified that the commits you are missing are totally unrelated to your work (e.g. only affect a package that is not in the dependency chain of yours). You can do so via: 'git diff $(git merge-base master remotes/origin/master) remotes/origin/master' ==> if 'git pull --rebase=preserve origin master' fails or yields complicated conflicts, continue with a regular merge (you might have to abort the rebase via 'git rebase --abort' first): 'git merge remotes/origin/master' ===> if merge conflicts occur, fix them via 'git mergetool' and continue from point 2. ===> if no merge conflicts occur, run 'repoman full' and continue from point 6. TODO: guide for merging user pull requests