Pour le moment, quand je lance git status
, jai
modified: loanwolf/alerts/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/alerts/locale/fr/LC_MESSAGES/django.po modified: loanwolf/clientspace/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/clientspace/locale/fr/LC_MESSAGES/django.po modified: loanwolf/configurations/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/configurations/locale/fr/LC_MESSAGES/django.po modified: loanwolf/contracts/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/contracts/locale/fr/LC_MESSAGES/django.po modified: loanwolf/contrib/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/contrib/locale/fr/LC_MESSAGES/django.po modified: loanwolf/core/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/core/locale/fr/LC_MESSAGES/django.po modified: loanwolf/core/templatetags/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/core/templatetags/locale/fr/LC_MESSAGES/django.po modified: loanwolf/customers/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/customers/locale/fr/LC_MESSAGES/django.po modified: loanwolf/customers/models.py modified: loanwolf/dashboard/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/dashboard/locale/fr/LC_MESSAGES/django.po modified: loanwolf/documents/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/documents/locale/fr/LC_MESSAGES/django.po modified: loanwolf/employees/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/employees/locale/fr/LC_MESSAGES/django.po modified: loanwolf/equifax_report/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/equifax_report/locale/fr/LC_MESSAGES/django.po modified: loanwolf/loans/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/loans/locale/fr/LC_MESSAGES/django.po modified: loanwolf/messaging/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/messaging/locale/fr/LC_MESSAGES/django.po modified: loanwolf/notes/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/notes/locale/fr/LC_MESSAGES/django.po modified: loanwolf/operations/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/operations/locale/fr/LC_MESSAGES/django.po modified: loanwolf/perception/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/perception/locale/fr/LC_MESSAGES/django.po modified: loanwolf/products/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/products/locale/fr/LC_MESSAGES/django.po modified: loanwolf/requests/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/requests/locale/fr/LC_MESSAGES/django.po modified: loanwolf/requests/models.py modified: loanwolf/statistics/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/statistics/locale/fr/LC_MESSAGES/django.po modified: loanwolf/users/locale/fr/LC_MESSAGES/django.mo modified: loanwolf/users/locale/fr/LC_MESSAGES/django.po
Je souhaite nettoyer la sortie pour supprimer modified:
et les fichiers
loanwolf/requests/models.py loanwolf/customers/models.py loanwolf/requests/locale/fr/LC_MESSAGES/django.po
En fait, je veux garder tous les fichiers sauf les trois derniers. Comment pourrais-je faire ça?
Pour le moment, je pense que je pourrais faire git status | grep -v "request"
. Je souhaite git checkout
tous les fichiers sauf ces trois fichiers.
git status | grep "modified:" | awk "{print $2}" | xargs git [diff|add|checkout]
????
Commentaires
- Comment choisissez-vous ces 3 fichiers ??
- stackoverflow.com / questions / 38328065 / … … Je pense que nous pourrions le faire.
Réponse
Je procéderais de cette façon:
-
validez les fichiers que vous souhaitez conserver (temporairement)
git commit -m WIP loanwolf/requests/models.py loanwolf/customers/models.py loanwolf/requests/locale/fr/LC_MESSAGES/django.po
-
vérifier tout le reste
git checkout .
-
réinitialiser pour annuler le commit (cela ne perdra aucun changement)
git reset HEAD^1
Si vous voulez jouer avec git status
, consultez git status -s
, sa sortie est plus facile à traiter de manière fiable.
Commentaires
- Vous pourriez probablement aussi utiliser un " stash "? Jai ' fait cela moi-même, mais seulement une ou deux fois avec une interface graphique. Cela signifie essentiellement que vous ' cacher un fichier pendant un certain temps, puis vous retirez les derniers commits, puis appliquez les fichiers cachés au référentiel.
- @Kusalananda un cache serait plus pratique, mais
git stash
stocke létat complet de lespace de travail, il ne peut pas filtrer (AFAIK). Vous avez raison cependant que mon utilisation dun commit ici ressemble plus à une cachette quà un commit approprié. Certaines interfaces graphiques ont des variantes de stockage qui prennent en charge le filtrage, celles-ci fonctionneraient également.