2015-08-25 2 views
0

Я последовал шаги, приведенные в качестве ответа на следующий вопрос: How to remove a directory from git repository?Как удалить папку из репозитория Github?

Однако, когда я исполняю (последнюю команду из 3-х)

мерзавец мастер толчок происхождения

я получаю следующее (которую я не мог решить даже при попытке нажимать файлы/папки без --force):

! [rejected]  master -> master (fetch first) 
error: failed to push some refs to 'https://github.com/dragGH102/leaderboard-meteor.git' 
hint: Updates were rejected because the remote contains work that you do 
hint: not have locally. This is usually caused by another repository pushing 
hint: to the same ref. You may want to first integrate the remote changes 
hint: (e.g., 'git pull ...') before pushing again. 
hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

Я попытался с

мерзавец тянуть хозяина происхождения

, но он открывает интерфейс CLI, на котором я не знаю, как взаимодействовать (я на Linux).

Как исправить эту проблему?

EDIT _ полное содержание оболочки:

git rm -r .meteor 
> git commit -m "Remove extra directory" 

[master e901990] Remove extra directory 
1 file changed, 10 insertions(+), 1 deletion(-) 
> git push origin master 

Username for 'https://github.com': dragGH102 
Password for 'https://[email protected]': 
To https://github.com/dragGH102/leaderboard-meteor.git 
! [rejected]  master -> master (non-fast-forward) 
error: failed to push some refs to 'https://github.com/dragGH102/leaderboard-meteor.git' 
hint: Updates were rejected because the tip of your current branch is behind 
hint: its remote counterpart. Integrate the remote changes (e.g. 
hint: 'git pull ...') before pushing again. 
hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

> git pull origin master 

# open GUI (no idea how to interact here and what to do) 
Merge branch 'master' of https://github.com/dragGH102/leaderboard-meteor 

# Please enter a commit message to explain why this merge is necessary, 
# especially if it merges an updated upstream into a topic branch. 
# 
# Lines starting with '#' will be ignored, and an empty message aborts 
# the commit. 
           [ line 1/8 (12%), col 1/73 (1%), char 0/300 (0%) ] 
^G Get Help  ^O WriteOut  ^R Read File  ^Y Prev Page  ^K Cut Text  ^C Cur Pos 
^X Exit   ^J Justify  ^W Where Is  ^V Next Page  ^U UnCut Text  ^T To Spell 
+0

Вы можете разместить интерфейс CLI, который появляется, когда вы тянете? один тест заключается в создании другой ветки на удаленном компьютере (возможно, у вас есть проблемы с разрешением) –

+0

Я только что отредактировал свой ответ с полной оболочкой + GUI. – dragonmnl

+0

Просто сохраните фиксацию слияния, и все в порядке. После слияния вы можете продвигать свои вещи. – ckruczek

ответ

1

git pull включает в себя объединение и это именно то, с чем вы сталкиваетесь , Если бы не было изменений в восходящем направлении, было бы быстрое переключение .

Часто текущая ветвь ветви является предком именованной фиксации. Этот является наиболее распространенным случаем, особенно при вызове с git pull: вы отслеживаете восходящий репозиторий, вы не указали локальные изменения, и теперь хотите обновить до новой версии восходящего потока. В этом случае новый сбор не требуется для хранения объединенной истории; вместо этого, HEAD (вместе с индексом) обновляется, чтобы указать на присвоенный commit, , не создавая дополнительного коммита слияния.

Однако, как и ваш репо и выше изменился, вы столкнулись с истинное слияние.

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

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

Источник цитаты: https://www.kernel.org/pub/software/scm/git/docs/git-merge.html

Подробнее: https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging

2

Это позволит удалить каталог из мерзавца и местного

git rm -r the_directory 
git commit -m "Remove duplicated directory" 
git push origin master 

Чтобы удалить только из мерзавца

git rm -r --cached folder_name 
+0

Это именно то, что я сделал (после упомянутого ответа). BUt Я получаю эту ошибку – dragonmnl

+0

Я только что отредактировал свой ответ с полным shell + GUI – dragonmnl

Смежные вопросы