Il y a déjà de bonnes réponses, mais ma situation était fastidieuse. J'avais édité la source d'un logiciel PLM (gestion du cycle de vie des produits) installé sur Win10 et décidé ensuite: "J'aurais probablement dû en faire un dépôt git."
Ainsi, l'option de cache ne fonctionnera pas directement pour moi. Publier pour d'autres personnes qui peuvent avoir ajouté le contrôle des sources APRÈS avoir fait un tas de travail initial ET .gitignore
ne fonctionne pas MAIS, vous pourriez avoir peur de perdre un tas de travail, donc ce git rm --cached
n'est pas pour vous.
!IMPORTANT: C'est vraiment parce que j'ai ajouté git trop tard à un "projet" trop gros et qui semble ignorer mon .gitignore. Je n'ai AUCUN engagement, jamais. Je peux git loin avec ça :)
Tout d'abord, je viens de faire:
rm -rf .git
rm -rf .gitignore
Ensuite, je devais avoir une photo de mes changements. Encore une fois, c'est un produit d'installation sur lequel j'ai apporté des modifications. Trop tard pour un premier commit de pure master branch. Donc, j'avais besoin d'une liste de ce que j'avais changé depuis que j'avais installé le programme en ajoutant > changed.log
à l'un des éléments suivants:
PowerShell
# Get files modified since date.
Get-ChildItem -Path path\to\installed\software\ -Recurse -File | Where-Object -FilterScript {($_.LastWriteTime -gt '2020-02-25')} | Select-Object FullName
Frapper
# Get files modified in the last 10 days...
find ./ -type f -mtime -10
Maintenant, j'ai ma liste de ce que j'ai changé au cours des dix derniers jours (n'entrons pas dans les meilleures pratiques ici sinon pour dire, oui, je me suis fait ça).
Pour un nouveau départ, maintenant:
git init .
# Create and edit .gitignore
J'ai dû comparer ma liste modifiée à mon .gitignore grandissant, en cours d'exécution git status
d' fur et mesure que je l'améliorais, mais mes modifications dans .gitignore sont lues au fur et à mesure.
Enfin, j'ai la liste des changements souhaités! Dans mon cas, c'est passe-partout - certains thèmes fonctionnent avec plusieurs configurations XML spécifiques à l'exécution d'un système de développement contre ce logiciel que je veux mettre en dépôt pour que d'autres développeurs saisissent et contribuent ... Ce sera notre branche principale, donc s'engager, pousser et enfin BRANCHER pour de nouveaux travaux!
.gitignore
fichier utiliseANSI
ouUTF-8
encodage. S'il utilise autre choseUnicode BOM
, il est possible que Git ne puisse pas lire le fichier.