2015-04-05 2 views
0

Ну, может, кто-то спросил об этом раньше, извините меня, если я попрошу еще раз.Как очистить новый удаленный репозиторий git?

Я долго работал над своей диссертацией в каталоге в Dropbox.

Теперь для пересмотра я получаю помощь от некоторых людей, и поскольку все это было создано в LaTeX, репозиторий в git - хорошая идея. Я должен признаться, что я совершенно новый, используя это.

Итак, я открыл учетную запись внутри Bitbucket для хранения удаленного хранилища из моего проекта (тезисы) и упростил изменения и другие изменения.

Я пытался следовать инструкциям по созданию хранилища, но я делаю ошибку, шаг я последовал были:

$ echo "Aradenatorix Veckhom Vacelaevus" >> contributors.txt 
$ git add contributors.txt 
$ git commit -m 'Initial commit with contributors' 
$ git push -u origin master 

Я сделал первые 3 строчки, но потом я увидел, что это был unnecesary Becase они были инструкции для создания моего первого файла, фиксации и нажатия, но у меня еще много файлов из проекта. Правильные шаги:

cd /path/to/my/repo 
git remote add origin https://[email protected]/Aradenatorix/tesis.git 
git push -u origin --all # 
git push -u origin --tags # 

Ели один я сделал раньше, поэтому у меня нет никаких проблем с тем, что вместо следовать за 4-й шаг от неправильных инструкций до того, что я сделал второй из этого, но когда я попытался третья у меня была ошибка:

No refs in common and none specified; doing nothing. 
Perhaps you should specify a branch such as 'master'. 

Однако мне не нужно, чтобы добавить все содержимое каталога, только .tex файлы и подкаталоги с прилагаемыми фотографиями. После объяснения выше у меня есть два сомнения:

  1. Я знаю, что я могу начать мерзавца с $ git init, но ... Как остановить это?
  2. Как удалить все эти файлы, загруженные в этот удаленный репозиторий?

Я попытался с $ git rm и много вариантов, таких как --dry-run, --cached, -r и --ignore-unmatched, но ничего не работает до сих пор.

Заранее спасибо

+0

Была ли ваша диссертация ранее под контролем источника в локальном репозитории git? Если нет, сначала необходимо скопировать файлы локально, прежде чем вы нажимаете их на удаленный компьютер. Если вы запустите git status, вы увидите все файлы в неустановленной области. Добавьте и перенесите их сначала, а затем попробуйте git push -u origin master – SimplicityGuy

+1

Если вы уже выполнили все файлы без .tex, вам нужно будет их rm, а затем git add --all. И зафиксируйте удаление этих файлов. – SimplicityGuy

+0

@SimplicityGuy На самом деле нет, мой тезис не был под другим местным git-репо, это будет первый. Как удалить ненужные файлы из локального репо? – Aradnix

ответ

1

Предполагая, что вы сделали бы только пару коммитов. Вы можете воссоздать фиксацию.

git reset HEAD~<number of commits> 
rm path/to/unnecessary/file 

Добавить новые файлы, которые ранее не были добавлены (по желанию):

git add new/files 
git commit 

Чтобы получить количество фиксаций (который, вероятно, следует быть 1 или 2 в вашем случае),

git rev-list HEAD --count 

Наконец, сделайте силовой толчок.

git push origin master --force 

Этот параметр следует использовать, только если ваше репо не распространяется на других людей, и вы знаете, что делаете. Вы перезапишите пульт. Локальные изменения будут перезаписаны всеми удаленными изменениями.

Как вы упомянули, это новый репозиторий, и вы ранее не использовали контроль версий для своего проекта. Поэтому я думаю, вы можете продолжить это.