> On Apr 19, 2:32 pm, Kevin Barry <
bar...@gmail.com> wrote:
> I'd be fine with having
> Tom build all the packages himself, but I feel like that's a pretty big
> burden.
So, I wasn't trying to say that I was going to build every package.
My idea is that, for now, I could collect the "main" set of PKGBUILDs
for every package. Each individual package maintainer would be
ultimately responsible for building/uploading their packages. I was
just thinking that I could, from time to time, build packages after
pull requests, if there is a large change or something else, just as a
second test to verify that it works. I'm not saying I'd do this for
every package, as then I probably would not have time to do much else!
;)
> I agree with you, and the only two solutions I see at the moment is to
> either scrap the forking repo idea, or have a larger group of 'core'
> devs that look over the main repo.
Again, every time you clone a repo, you fork it. Once someone sends a
pull request, and I pull their changes, our repositories will be
exactly the same.
Here is how I see the developer workflow:
1.) Clone my git repo
2.) Add/Edit PKGBUILDs
3.) Commit to their personal repo
4.) Submit a pull request to me -AND-
5.) Build a package, and upload it to a testing repo.
6.) I look over the changes, _POSSIBLY_ build the package myself, or
try the package in testing, then:
7.) I merge the developer's changes, and move the binary to main.
Now, if each of us has our own repo on Github (note, it does not
necessarily need to be on github, it can be on any publicly accessible
area), how can we share our work-in-progress PKGBUILDs? Easy, with
git's remote hosts capability.
For example, say Kevin has a repo at
github.com/Kevin/arch-osx, and he
maintains the Vim package. Now Kevin is in the middle of
restructuring the Vim PKGBUILD, and has a package in testing, but its
not ready for the main repo. He creates a branch on his repo called
"vim-testing":
git checkout -b vim-testing
<...Make changes...>
Then, if anyone wants to see Kevins testing stuff, they can clone my
repo, then do:
git remote add kevin
github.com/Kevin/arch-osx
git checkout kevin/vim-testing
They will now be on his remote branch, and can see his changes. If
they wanted to share some changes with him:
git checkout -b vim-testing -t kevin/vim-testing
<...Make changes..>
Now, they can submit a pull request to Kevin, who can merge their
changes, and then, once its ready, submit a pull request to me.
I hope this rambling made some sense. I think this sort of workflow
is powerful, and takes advantage of Git's features.
-Tom