Est-il possible d'avoir un personnalisé .gitignore? L'accès en lecture seule?
Je suis en train de travailler dans un environnement d'équipe, et il y a déjà un .gitignore
fichier.
Je veux ajouter des éléments à la .gitignore
fichier, mais je ne veux pas vérifier ce fichier soit en. Il est possible de définir les ignorer les fichiers qui s'appliquent seulement à moi?
Aussi, je veux le donner à quelqu'un l'accès en lecture seule à un dépôt git sur notre serveur, si j'ai ajouter sa clé SSH à notre serveur, ils vont obtenir un accès complet comme tout le monde. Comment puis-je limiter à lecture seule, sans s'engage permis.
- Double Possible de puis-je faire d'un utilisateur spécifique gitignore fichier?
Vous devez vous connecter pour publier un commentaire.
.git/info/exclude
. Voirgitignore(5)
.git-daemon
, un serveur web, ou Gitosis, ou Gitolite..git/info/exclude
à la racine du projet dir.core.excludesfile
vous pouvez spécifier un global exclut fichier.ln -s .git/info/exclude .personalGitignore
Alors nous pouvons ajouter# ln -s .git/info/exclude .personalGitignore \n .personalGitignore
pour .gitignoreJe sais que je suis un peu en retard à la conversation mais vous pouvez envisager d'utiliser
Comme le git document d'aide unis:
C'est moi qui souligne. Il continue à dire
Il suffit donc de garder à l'esprit que vous devez être au courant de toute l'amont des modifications apportées à ces fichiers.
Dans le cas où vous souhaitez commencer le suivi, le fichier à nouveau tout ce que vous avez à faire est d'utiliser
J'espère que cela aide les futurs spectateurs de ce post.
Pour le ssh, vous devriez envisager d'utiliser Gitolite (un remplaçant pour gitosis).
Comme Fred Frodon dit, vous pouvez mettre votre privé exclure des règles dans le
.git/info/exclude
du référentiel.Si vous souhaitez appliquer les mêmes règles d'exclusion pour tous les dépôts sur votre machine, vous pouvez ajouter le texte suivant à la
.gitconfig
fichier dans votre répertoire utilisateur.Puis ajouter vos exclure des modèles de
~/.gitexclude
.Vous pouvez être intéressé par un mise à jour de crochet que Junio a écrit et que Carl améliorée. Placez le code ci-dessous dans
$GIT_DIR/hooks/update
et n'oubliez pas de l'activer avecchmod +x
.Avec ce crochet en place, vous devez ensuite donner à certains utilisateurs ou groupes pour faire des modifications dans le référentiel. Quelqu'un d'autre qui peut voir qu'il a un accès en lecture seule.
Si cette personne n'a pas déjà ont accès à l'hôte sur lequel votre référentiel de vies, peut-être que personne ne devrait avoir qu'
git-shell
accès plutôt que d'un accès illimité. Créer un objectif spécifique et les utilisateurs de git et dans~git/.ssh/authorized_keys
, ajouter l'outsider de la clé SSH dans le formulaire ci-dessous. Notez que la clé doit être sur une ligne longue, mais j'ai regroupé ci-dessous à l'aide de la présentation.En fonction de votre configuration, vous devrez peut-être ajuster le chemin d'accès à
git-shell
. Rappelez-vous quesshd
est très paranoïaque sur les autorisations de la.ssh
répertoire, c'est donc au tour de son groupe-écrire bits et tous les fichiers en-dessous d'elle.De rediriger tout le monde par les utilisateurs de git signifie que vous devez être en mesure de dire aux gens à part, et c'est le but de la
myorg_git_user
variable d'environnement. Au lieu de compter sur une inconditionnelle de lausername=$(id -u -n)
, modifier votre jour de crochet pour l'utiliser:Avec cette configuration, votre ami avec un accès en lecture seule permet de cloner avec une commande ressemblant à celui ci-dessous. Le chemin d'accès particulier dépendra de votre configuration. Pour faire le beau travail sur la voie, soit de déplacer votre référentiel git répertoire home de l'utilisateur ou créer un lien symbolique qui pointe vers elle.
mais ne sera pas en mesure de faire des mises à jour.
Vous avez dit que vous travaillez dans un environnement d'équipe, donc je suppose que votre référentiel central a été créé avec le
--shared
option. (Voircore.sharedRepository
dans legit config
de la documentation et--shared
dans legit init
de la documentation.) Assurez-vous que les nouveaux utilisateurs de git est un membre du groupe système qui nous permet à tous, vous avez accès à votre référentiel central.