Git d'Installation Meilleures pratiques
J'ai été chargé de la configuration de Git pour mon bureau. Nous avons plusieurs sites. Je vient de créer un lecteur réseau pour nous pousser nos modifications. Ma question est: Où dois-je initialiser le dépôt Git?
- Nouveau dir+init pour chaque site?
- Un init dans le clean & nouveau lecteur et chaque dir un autre site?
- Quelque chose d'autre de mieux qui me manque?
Je cherche des conseils de tout et de tous, surtout si vous avez maudit le premier mec à le configurer de se demander "POURQUOI"?
Si vous êtes un débutant complet: comment dans ce monde pourraient-ils donner à cette tâche pour vous? Qui a décidé de prendre git quand même le gars qui a le configurer a absolument aucune connaissance sur le système???
La petite équipe de développement, nous avons tous de porter plusieurs chapeaux... ma première question exactement.
C'est la première fois que je l'ai jamais vu E. E. Cummings poème référencé par n'importe qui. Je l'ai même utilisé en tant que noms d'utilisateurs, pour moi-même à l'occasion. Cool!
merci! C'est mon préféré!
La petite équipe de développement, nous avons tous de porter plusieurs chapeaux... ma première question exactement.
C'est la première fois que je l'ai jamais vu E. E. Cummings poème référencé par n'importe qui. Je l'ai même utilisé en tant que noms d'utilisateurs, pour moi-même à l'occasion. Cool!
merci! C'est mon préféré!
OriginalL'auteur rpophessagr | 2012-02-14
Vous devez vous connecter pour publier un commentaire.
La structure de repos n'est pas une question si sites (ce que vous voulez dire), mais une question de projets.
Comme une règle du pouce:
Au sein de chaque repo, la structure, le travail avec des les branches, et ne pas confondre les branches avec des moyens de l'organisation de différentes couches logicielles: les branches sont utilisées pour organiser le travail dans un repo (c'est à dire différents de développement des chaînes d'UN logiciel). Une ramification de ce modèle (qui semble être très populaire ici, DONC) est celui-ci:
Confus? Curieux? Lire la explication...
+1 pour nu repo (
git init --bare
) - certainement un must-have pour l'OP de l'environnement, de ce que cela ressemble.De grands articles merci!
Que treehouse blog de l'URL n'est plus valide.
Ce que vous devriez faire est maître -IC-> build/test/analyse -> fusion de maître -CD-> déployer intégration/test/UAT -> branche de version. Des correctifs sont fait sur la branche de version. Si il y a un conflit en maître à la libération, cela signifie que vous n'avez pas de retour de fusion le correctif et vous ne pouvez pas le libérer. Dans votre modèle, vous dégagez AVANT de les fusionner pour maître, et par le temps, vous trouvez un conflit, il est trop tard. Le "sévère correction d'un bug" est juste assis sur le master et les produits déjà livrés.
OriginalL'auteur
C'est une question de préférence si vous préférez avoir toutes les bases de code dans un repo git, ou chacun dans leur propre. Cela dit, ma préférence serait un repo git par le code de la base/du site. De cette façon, vous pouvez travailler sur un seul site, sans avoir à consulter les autres, et vous n'aurez pas à vous soucier de changer les autres sites de tout vous engage pourrait pousser dans n'importe quel site.
Si vous avez besoin d'être capable de changer de version d'une chose, sans en affecter un autre, alors ils doivent être dans des dépôts - qui n'est pas une question de préférence.
OriginalL'auteur
Je recommanderais gitolite si vous hébergez le repo en interne. Vous ajoutez un repo central en modifiant simplement la confusion fichier.
Sauf si vous faites de développement cross plate-forme, jeu auto crlf à false.
Gérer vos branches de cette façon:
http://dymitruk.com/blog/2012/02/05/branch-per-feature/
OriginalL'auteur
Vous souhaitez probablement d'un serveur centralisé qui vous poussez les changements et les cloner. Ce serveur peut avoir un référentiel ou à plusieurs. Je recommande la lecture de http://sethrobertson.github.com/GitBestPractices/ qui a plusieurs sections d'un intérêt direct. Plus précisément la cueillette d'un local de flux de travail, un distribué des flux de travail, et la façon de diviser le travail en dépôts.
OriginalL'auteur
Configuration De Base
Je vous suggère de créer un répertoire consacré à git sur un serveur.
J'ai utilisé le nom du répertoire
/git
sur un serveur géré par mon entreprise pour travailler, et pour un usage personnel j'ai également créé un répertoire appelé/git
sur un domaine privé de du serveur web.À l'intérieur de votre /répertoire git vous pouvez ensuite créer des nu référentiels pour vos projets
Ajouter un spectateur
Ensuite, vous pouvez installer quelque chose comme GitList sur le serveur pour autoriser les modifications apportées au logiciel d'être bien vue, par exemple, les suppressions en rouge et insertions en vert.
Contrôle De Version Distribué?
Git est un système distribué, système de contrôle de version. De sorte que vous pouvez le faire à plusieurs sites. Les avantages sont alors qu'à tout moment, si vous perdez votre connexion à d'autres sites, vous pouvez continuer à travailler sans interruption. Aussi, si vous avez des pannes de disque dur ou de toute sorte de problèmes similaires, vous avez plusieurs copies des données.
Vous pouvez proposer un site comme le site principal si vous voulez que les gens devraient toujours les pousser à, ou vos habitudes de travail pourrait être que les gens poussent tous vos sites serveur.
Utiliser des commandes comme
ainsi, vous pouvez faire des choses comme
J'ai un script de sauvegarde qui fonctionne tous les jours, en tirant à partir de github, à partir de nos propres gitserver, un NAS, un disque USB, et de les pousser à chacun d'eux.
Faire, il existe deux méthodes pour s'assurer qu'il existe plusieurs copies d'un logiciel de changement.
Commencer par la mise en place de Git sur un serveur et en ajoutant quelque chose comme GitList pour afficher les modifications joliment.
Une fois que tu comprends bien les étapes, vous pouvez les répéter à un autre site si vous le souhaitez, et quand vous le décidez.
L'importation de vieux projets?
En tant qu'administrateur système, vous pouvez importer des anciens projets dans le dépôt Git.
Vous pouvez le faire en commettant un dépôt vide.
Et ensuite à plusieurs reprises, la décompression de vos versions archivées d'un projet dans un répertoire de projet (vidé en dehors de l'git fichiers) et la validation de la archivé état.
Si vous vous engagez archivés les états dans l'ordre chronologique, alors votre logiciel de visualisation (GitList ou quoi que ce soit) est alors susceptible de commencer à vous montrer les modifications historiques de bugs, mais mélangés à des moments et incomplète à d'autres.
Aussi, vous serez en mesure d'utiliser
git blame
pour avoir une idée de quand certaines lignes de code ont été introduites.OriginalL'auteur