Как я могу удалить все файлы в моем git-репо и обновить / отправить из моего локального git-репо? - PullRequest
52 голосов
/ 29 января 2012

Можно ли удалить все файлы в хранилище и обновить его только теми файлами, которые есть на моем локальном компьютере? Причина в том, что в моем github есть определенные файлы, которые не нужны, и поэтому я хочу удалить эти файлы. Вместо того, чтобы удалять файлы один за другим, я хотел посмотреть, возможно ли просто удалить все файлы в моем git-репо и обновлять / отправлять только файлы на моем локальном компьютере. Надеюсь, это ясно. Спасибо.

Ответы [ 10 ]

53 голосов
/ 29 января 2012

Вы можете сделать это так:

cd /tmp
git clone /your/local/rep  # make a temp copy
cd rep
git rm -r *                # delete everything
cp -r /your/local/rep/* .  # get only the files you want
git add *                  # add them again
git status                 # everything but those copied will be removed
git commit -a -m 'deleting stuff'
cd /your/local/rep
git pull /tmp/rep          # now everything else has been removed

Вероятно, для этого есть единственная возможность ...

34 голосов
/ 09 сентября 2015

Сначала удалите все файлы из вашего Git-репозитория, используя: git rm -r *

После этого вы должны совершить: использование git commit -m "your comment"

После этого вы нажимаете, используя: git push (это обновление исходного хранилища)

Для подтверждения вашего статуса используйте: git status

После этого вы можете скопировать все ваши локальные файлы в локальную папку Git и добавить их в репозиторий Git с помощью: git add -A

Вы совершаете (git commit -m "your comment", и вы нажимаете (git push)

22 голосов
/ 29 января 2012

Да, если вы делаете git rm <filename> и фиксируете эти изменения.Файл исчезнет из репозитория для этого набора изменений и последующих коммитов.

Файл все еще будет доступен для предыдущих ревизий.

6 голосов
/ 30 марта 2016

Удалить все элементы в хранилище:

$ git rm -r *

тогда:

$ git commit -m 'Delete all the stuff'
4 голосов
/ 29 июня 2018

В моем случае

git rm -r .

сделал работу

2 голосов
/ 24 декабря 2016

Этот процесс прост и проходит в том же порядке, что и любой git commit.

  1. Убедитесь, что ваше репо полностью обновлено.(например: git pull)
  2. Перейдите в папку репо на локальном диске.
  3. Удалите файлы, которые вам больше не нужны.
  4. Затем git commit -m "nuke and start again"
  5. Тогда git push
  6. Прибыль.
0 голосов
/ 17 апреля 2019

Я пытался сделать:

git rm -r *

но в конце у меня работает:

git rm -r .

Надеюсь, это вам поможет.

0 голосов
/ 23 ноября 2017

Удалить все элементы в хранилище:

 git rm -r * -f -q

, затем:

 git commit -m 'Delete all the stuff'

, затем:

 git push -u origin master

, затем:

 Username for : "Your Username" 
 Password for : "Your Password"
0 голосов
/ 05 января 2017

Удалите скрытую папку .git (которую вы можете найти в папке вашего проекта) и снова запустите процесс создания репозитория git с помощью команды git init.

0 голосов
/ 29 января 2012

Сделайте git add -A сверху рабочей копии, посмотрите на git status и / или git diff --cached, чтобы посмотреть, что вы собираетесь сделать, затем git commit результат.

...