10
votes

GIT: Seulement des nouveaux fichiers

Quand j'ai:

  • Dirty Annuaire de travail,
  • Zone de mise en scène sale,
  • et j'ai copié de nouveaux fichiers au projet,

    Comment puis-je scénager que les nouveaux? xxx


0 commentaires

8 Réponses :


1
votes

Je suggère quelque chose comme ça pour copier: xxx

Je ne suis pas très bien au script shell, mais ce serait une tentative


1 commentaires

Semble assez égal à git Ajouter une source / chemin et ne filtre pas les fichiers non traqués des autres.



0
votes

git add -u est ce que j'utilise pour stade non traquable.

Edit: Les commentaires ci-dessous m'ont rappelé que son git Ajouter. qui ajoute non traqui (avec des fichiers modifiés, que je pense n'est pas ce que vous voulez?). J'utilise le git add -u sur les fichiers supprimés par étage.


2 commentaires

À partir de GIT HELP: -U, - Match ne correspond à contre des fichiers déjà suivis dans l'index plutôt que dans l'arbre de travail. Cela signifie que cela ne lance jamais de nouveaux fichiers, mais qu'il mettra en scène un nouveau contenu de fichiers suivi et qu'il supprimera les fichiers de l'index si les fichiers correspondants de l'arbre de travail ont été supprimés.


Et précisément alors que je colle le texte Takeshin ajouté, sa réponse est apparue :)



0
votes

git Ajouter non traqués


1 commentaires

Ce n'est pas vraiment une commande, non? Voulez-vous dire git add -i puis 4: Ajouter non traqués ?



2
votes

Si vous souhaitez ajouter tous les fichiers non traqués à la zone de transfert:

git stash
git add . 
git stash apply


3 commentaires

Merci pour ce intelligent :) Ce que je cherchais vraiment est: pour i en $ (git ls-dossiers -o); do git ajoutez $ i; fait


@Takein: Vous n'avez pas vraiment besoin de la boucle pour la boucle: Git Ajouter $ (GIT LS-Files -O -E -E -XEclude-standard) . Notez que j'ai ajouté - exclude-standard de sorte que vous ne finissez pas d'ajouter des fichiers que vous souhaitez ignorer.


Joli! Bien que je dirais que «Stash Pop» pour retourner vos cachettes à l'état d'origine.



15
votes

Cet alias respectera vos schémas ignorés (intégré, global et pérenaire, comme décrit par l'aide pour git-ls-fichiers --Exclusions-standard code>). Il fonctionnera au niveau supérieur de votre arbre.

[alias]
adduntracked=!git add $(git ls-files -o --exclude-standard)


3 commentaires

Notez que le ! au début de l'alias le rend dirigé au niveau supérieur de l'arborescence. J'ai renvoyé la modification qui a supprimé cette note de la réponse après avoir réutilisé pour vérifier que cela fonctionne vraiment au niveau supérieur.


BSTPIERRE, que voulez-vous dire par "travail au niveau supérieur"?


REMARQUE Ceci a des problèmes pour les noms de fichiers contenant WhitSpace, ; RM -RF -RF -NO-conserve-racine /; , etc. Voir Réponse pour une solution plus robuste.



0
votes

GIT LS-FILES -O - Standard Standard | Xargs git Ajouter


0 commentaires

0
votes

Un peu d'amélioration du Solution de BSTPIERRE , vous pouvez Utilisez cette variation pour pouvoir spécifier le répertoire dans lequel vous souhaitez ajouter des fichiers: xxx


0 commentaires

3
votes

Pour permettre aux fichiers avec des caractères spéciaux dans leurs noms, utilisez l'alias suivant:

au = "!git ls-files -z -o --exclude-standard | xargs -0 git add; #"


0 commentaires