如何删除github上的一个项目的内容,重新提交所有内容
高洛峰
高洛峰 2017-04-22 08:59:48
0
7
802

刚上传了vs项目到github,但是忘记搞gitignore文件,导致项目上传的体积太大,

现在不知道怎么办了?

删除里面所有文件,写好gitignore文件后重新commit然后push?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(7)
大家讲道理

git rm -r --cache . git ajouter . git commit -m "gitignore working"

La première fois que j'ai soumis une question, le système ne l'avait pas examinée depuis longtemps, alors je l'ai recherchée. En fait, j'ai trouvé la réponse de stackoverflow hier soir. Mais merci à tous quand même. http://stackoverflow.com/questions/1139762/gitignore-file-not-ignoring

阿神

Veuillez saisir la description du lien

Il existe également une option pour réécrire l'historique si vous souhaitez modifier par script un grand nombre de commits - par exemple, pour modifier les adresses e-mail globalement ou supprimer un fichier de tous les commits. Cette commande est une branche de filtre et elle modifiera considérablement votre historique, vous ne devriez donc probablement pas l'utiliser à moins que votre projet ne soit pas encore public et que personne d'autre ne travaille sur le commit que vous avez l'intention de modifier. Pourtant, celui-ci peut être très utile. Vous apprendrez quelques utilisations courantes pour vous faire une idée de ses capacités.

Supprimer un fichier de tous les commits Cela arrive souvent. Certaines personnes utilisent git add sans réfléchir et commettent accidentellement un énorme binaire que vous souhaitez supprimer de partout. Peut-être avez-vous accidentellement commis un fichier contenant un mot de passe et souhaitez-vous rendre votre projet open source. filter-branch sera probablement l'outil que vous utiliserez pour nettoyer tout votre historique. Pour supprimer un fichier nommé password.txt de tout l'historique, vous pouvez utiliser l'option --tree-filter sur filter-branch :

$ git filter-branch --tree-filter 'rm -f passwords.txt' HEAD Réécrire 6b9b3cf04e7c5686a9cb838c3f36a8cb6a0fc2bd (21/21) La réf 'refs/heads/master' a été réécrite L'option --tree-filter exécutera la commande spécifiée, puis soumettra à nouveau les résultats à chaque fois que le projet est extrait. Dans cet exemple, vous supprimeriez un fichier nommé password.txt de tous les instantanés, qu'il existe ou non. Si vous souhaitez supprimer tous les fichiers de sauvegarde de l'éditeur qui ont été accidentellement validés, vous pouvez exécuter une commande telle que git filter-branch --tree-filter 'rm -f *~' HEAD.

Vous pouvez regarder Git réécrire l'arborescence des répertoires et valider, puis déplacer le pointeur de branche vers la fin. Une meilleure approche consiste à le faire sur une branche de test, puis à réinitialiser votre branche principale après vous être assuré que le produit correspond réellement à ce que vous souhaitez. Pour exécuter filter-branch sur toutes vos branches, vous pouvez passer --all à la commande.

Définir un sous-répertoire comme nouveau répertoire racine Supposons que vous ayez effectué une importation depuis un autre système de contrôle de code et que vous disposiez de sous-répertoires dénués de sens (tronc, balises, etc.). Si vous souhaitez que le sous-répertoire trunk devienne le nouveau répertoire racine du projet pour chaque soumission, filter-branch peut également vous aider à le faire :

$ git filter-branch --subdirectory-filter trunk HEAD Réécrire 856f0bf61e41a27326cdae8f09fe708d679f596f (12/12) La réf 'refs/heads/master' a été réécrite Le répertoire racine de votre projet est désormais le sous-répertoire trunk. Git supprimera automatiquement les commits qui n'affectent pas ce sous-répertoire.

大家讲道理
git reset --hard `你想要回滚到的提交`

git push --force
阿神

Fournir une solution relativement novice : Entrez dans le projet-->Paramètres-->Supprimez ce référentiel, puis créez un nouveau dépôt et vous avez terminé

阿神

Vous devez utiliser

git reset 

Pour plus de détails, vous pouvez consulter les opérations d'annulation de Git : réinitialisation, extraction et annulation : http://www.liuhui998.com/4_9.html

Supposons que vous souhaitiez annuler toutes les modifications et revenir au commit le plus récent. La commande est la suivante :

$ git reset --hard HEAD
Peter_Zhu

Page d'accueil du projet——>Paramètres——>Supprimer ce référentiel——>Resoumettre D'accord, je ne suis pas très doué pour l'utiliser non plus

Peter_Zhu

Sauvegardez d'abord ou validez d'abord (leçon sanglante)

git reset --hard YOUR HEAD

Comment interroger la tête d'un enregistrement soumis

git reflog || git journal

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal