Hi,
I understand the reasoning about easily managing commit permissions.
A way to achieve that flexibility with git (and the typical functions in
web-based Git repo browsers) is the following:
- Put the more highly protected parts of the source tree in separate Git
repositories and link them in the master repo as "sub modules" (see
https://git-scm.com/book/en/v2/Git-Tools-Submodules). You can still
clone the whole source tree easily using "git clone --recurse-submodules".
- Only give people developer access to the master repo, but not the
"protected" sub modules.
- Generally: Protect the master branch(es) (then all contributions are
subject of review / merge request) and only give selected people
maintainer rights (the right to merge or push to master).
This is how we do it at work. It works well! :)
Best regards,
Tobias
On 2/9/20 5:08 AM, Greg Hellings wrote:
On Sat, Feb 8, 2020 at 1:49 PM Tobias Klein <[email protected]
<mailto:[email protected]>> wrote:
Hi,
Have you guys been thinking about migrating the Sword sources to Git?
We have this discussion every year.
I think this would be an enabler for better collaboration,
considering
the merge capabilities of Git and for example the nice merge/pull
request based review functionalities in GitLab (or GitHub).
Every time, this gets lots of people voting "yes"!
Every time the short answer is the same:
Troy doesn't want it moved. So it is not going to get moved.
The longer answer also remains the same:
Git has no simple method, in a similar vein to SVN, to allow Troy to
easily manage commit rights to particular portions of the repository.
He wants to keep tight control over who can commit where (e.g. I can
commit anywhere under the "bindings" or "cmake" directories or to any
file named "CMakeLists.txt", but nowhere else in the repo) and does
not believe the code review process in git front-ends is sufficient
for this. Writing a git hook to ensure this is not difficult, but also
not completely trivial. In SVN it's a very simple matter. It's not a
lack of familiarity with git (Troy develops Bishop within a git
repository and seems a relatively intelligent software developer
overall). It's literally this one missing feature, at least that's the
one impediment he's spoken about in the past.
So:
* Would git greatly increase the ability of people to contribute to
Sword? Yes
* Would Troy host Sword's canonical repository somewhere like Github?
Probably not
* Is Sword going to move to git without, at the very least, a solution
to this directory write problem? Nope
* Is that problem surmountable? Yes, but no one has stepped up and
implemented it in a githook, and SVN is working fine in Troy's view to
not encourage him to write it himself.
--Greg
Best regards,
Tobias
_______________________________________________
sword-devel mailing list: [email protected]
<mailto:[email protected]>
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
_______________________________________________
sword-devel mailing list: [email protected]
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page
_______________________________________________
sword-devel mailing list: [email protected]
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page