567 votes

Comment utiliser Git pour Unity3D contrôle de code source?

Quelles sont les meilleures pratiques pour l'utilisation de Git contrôle de code source avec Unity 3D, en particulier en traitant de la nature binaire de l'Unité des projets en 3D? Veuillez décrire le flux de travail, quels sont les chemins qui serait inclus dans .gitignore, quels paramètres doivent être définis dans l'Unité et/ou le projet, et toutes les autres choses qui doivent être noté.

Note: je me rends compte que l'utilisation de l'Actif du Serveur est l'Unité de la façon recommandée, mais je voudrais utiliser Git pour une variété de raisons. S'il vous plaît pas de réponses que de l'état ou de dire que je doit simplement utiliser le Serveur Actif. Le Serveur Actif n'est vraiment pas une option pour moi.

604voto

S.Richmond Points 2849

Voici un extrait de mon blog personnel .

Utiliser Git avec des Jeux en 3D

Git peut bien fonctionner avec les jeux 3D de la boîte. Toutefois, le principal inconvénient ici est la version grande taille (>5 MO), les fichiers multimédia peut être un problème sur le long terme que votre commit l'histoire gonfle. Nous avons résolu ce problème potentiel dans nos projets par la seule gestion des versions binaires de l'actif lorsqu'il est considéré comme définitif. Nos artistes 3D utiliser Dropbox pour travailler sur WIP actifs, à la fois pour la raison ci-dessus et parce que c'est beaucoup plus rapide et plus simple (pas de nombreux artistes souhaitent activement à l'utilisation de Git!).

Git

Votre workflow Git est très bien quelque chose que vous devez décider pour vous-même compte tenu de vos propres expériences en tant qu'équipe et votre façon de travailler ensemble. Cependant. Je vous recommande fortement de le bien nommé Git Flow méthodologie décrite par l'auteur original ici.

Je ne vais pas entrer dans trop de profondeur ici sur la manière dont la méthodologie des œuvres que l'auteur décrit parfaitement et en très peu de mots, alors il est facile de passer à travers. Je l'utilise avec mon équipe pour un certain temps maintenant, et c'est le meilleur flux de travail, nous avons essayé jusqu'à présent.

Git GUI Application Client

C'est vraiment une question de préférence personnelle ici, comme il y a bien quelques options en termes de Git GUI ou l'utilisation d'une interface graphique. Mais je voudrais proposer à la libre SourceTree application comme il se branche parfaitement avec le Git Flow extension. Lire la SourceTree tutoriel ici sur la mise en œuvre de la Git méthode de Flux dans leur application.

Unity3D Ignorer Les Dossiers

# =============== #
# Unity generated #
# =============== #
Temp/
Library/

# ===================================== #
# Visual Studio / MonoDevelop generated #
# ===================================== #
ExportedObj/
obj/
*.svd
*.userprefs
/*.csproj
*.pidb
*.suo
/*.sln
*.user
*.unityproj
*.booproj

# ============ #
# OS generated #
# ============ #
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

Unity3D Paramètres

Pour les versions de Unity 3D v4.3:

  1. Activer External option en Unity → Preferences → Packages → Repository. (Ignorez cette étape dans la v4.5 et plus)
  2. Commutateur Visible Meta Files en Edit → Project Settings → Editor → Version Control Mode.
  3. Commutateur Force Text en Edit → Project Settings → Editor → Asset Serialization Mode.
  4. Enregistrer la scène et le projet de File menu.

67voto

zasadnyy Points 649

Dans l'Unité 4.3-vous également eu à activer l'option dans les préférences, mais depuis l'Unité de 4,5 qu'ils ont laissé tomber l'option pour que, si plein processus de configuration ressemble à:

  1. Commutateur Hidden Meta Files en Editor → Project Settings → Editor → Version Control Mode
  2. Commutateur Force Text en Editor → Project Settings → Editor → Asset Serialization Mode
  3. Enregistrer la scène et le projet de File menu

Aussi notre équipe est à l'aide d'un peu plus étendu .gitignore le fichier:

# =============== #
# Unity generated #
# =============== #
Temp/
Library/

# ===================================== #
# Visual Studio / MonoDevelop generated #
# ===================================== #
ExportedObj/
obj/
*.svd
*.userprefs
/*.csproj
*.pidb
*.suo
/*.sln
*.user
*.unityproj
*.booproj

# ============ #
# OS generated #
# ============ #
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

Notez que seules les dossiers que vous devez garder sous contrôle de code source sont Assets et ProjectSettings.

Plus d'informations sur le maintien de l'Unité du Projet sous contrôle de code source, vous pouvez trouver dans ce post.

36voto

NabeelSaleem Points 143

Qu'est-ce que GIT?

Git est un logiciel gratuit et open source distribué système de contrôle de version (SCM) développé par Linus Torvalds en 2005 ( Linux OS fondateur). Il est créé pour contrôler tout rom petit à de gros projets avec rapidité et efficacité. Leader des sociétés comme Google, Facebook, Microsoft utilise GIT de tous les jours.

Si vous voulez en savoir plus sur GIT vérifier ce tutoriel Rapide,

Tout d'abord assurez-vous d'avoir votre Git de l'environnement mis en place.Vous devez définir votre environnement local et un dépôt Git (je préfère Github.com).

GIT application client Mac/Windows

Pour GIT gui application cliente, j'ai recommandé que vous y aller avec Github.com,

GitHub est le lieu de partage de code avec des amis, des collègues, des camarades de classe et des étrangers. Plus de cinq millions de personnes utilisent GitHub, pour construire ensemble des choses extraordinaires.

Unity3d paramètres

Vous devez faire ces paramètres

Interrupteur Visible Méta-Fichiers à Modifier → Paramètres du Projet → Éditeur → Contrôle de Version Mode.

enter image description here

Activer l'option dans l'Unité → Préférences → Paquets → Référentiel

enter image description here

Interrupteur pour Forcer le Texte à Modifier → Paramètres du Projet → Éditeur de → de l'Actif de la Sérialisation Mode.

enter image description here

Tutoriel complet avec des images

7voto

afpro Points 713

Edit -> Paramètres Du Projet -> Editeur: set de Contrôle de Version pour les fichiers de métadonnées ensemble des Actifs de la Sérialisation de la force de texte

je pense que c'est ce que vous voulez.

-1voto

spacemonkey391 Points 77

Heres une pratique tutoriel sur la façon d'utiliser l'unité avec bitbucket, c'est la même méthode que j'utilise personnellement Gamasutra Lien - il utilise Mercurial pas git, mais bitbucket prend en charge à la fois de sorte que vous pourriez utiliser git au lieu

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X