| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
|
|
|
|
| |
The ACL mask denotes the maximum access rights that can be granted by
ACL entries. Not recalculating it means that we end up with an incorrect
mask of r--, denying write permission for users other than the owner
even though ACL entries exist for them.
Explicitly set the mask and default directory mask to rwX such that we
end up with rw- on files and rwx on directories.
|
|
|
|
|
|
|
| |
We have always felt that the name of this program was too close to the
invocation of 'git init --shared' which does something similar. Make it
clear in the name that we're working with POSIX ACLs instead of normal
permission sets as 'git init --shared' does.
|
| |
|
|
|
|
| |
This way we do not need a 'See <manual>' line for each item.
|
| |
|
|
|
|
|
| |
setfacl(1) allows specifying multiple ACL entries with ','. This makes
the code cleaner and easier to maintain.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
git-init(1) allows users to safely reinitialize a git repository. This
is useful, for example, if new permissions are set with --shared.
This commit adds similar functionality to git-init-shared(1) by not only
setting the right ACLs on the toplevel directory (and relying on ACL
inheritance through the default entry), but also making sure that the
correct rights are set for all files that already exist in the
repository.
Where before a user had to run the right 'setfacl' invocation themselves
to add a new user to the access lists, now the same is possible by
simply invoking git-init-shared(1) again with the right user. For
example, the following invocation adds access to both 'foo' and 'bar':
git init-shared repo/ foo
git init-shared repo/ bar
|
| |
|
| |
|
|
|
|
|
| |
With the addition of another manual it is high time we add a convenient
way of installing both the tools and the manuals.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Both git-package(1) and git-sign-for-cgit(1) set 'errexit', making the
shell exit immediately upon an error. Since git-config(1) exits with an
error if a configuration entry could not be found, a missing entry for
package.format would lead to both scripts bailing out.
We want to fall back to the "tar.gz" format if package.format is unset,
so make sure to ignore this particular error.
|
| |
|
| |
|
|
|
|
|
| |
This came from when usage did its own printing. errx() already adds a
newline here (and this particular one was handled literally anyway).
|
|
|