2012-03-15 2 views
0

Я не мастер мерзавец, это точно, но пройти через довольно стандартной практикоймерзавец просто удалил кучу файлов после отказа слиться освоить

 
-git branch new_branch 
-git checkout new_branch 
#do a bunch of stuff 
-git add . 
-git commit -m "this is what I chanced" 
git checkout master 
git merge new_branch 

Я следил за моей регулярной рутиной, и после того, как выезд мастера, я получил ошибку

 
fatal: cannot create directory at 'app/assets/templates/users': Protocol error 

тогда сказал мои локальные изменения будут перезаписаны

Я снова попробовал с другим add . и подтвержденную мои изменения снова, но получил та же ошибка. Я переключился на свою основную ветку, думая, что мне нужно было внести изменения там, если я случайно внесла изменения, прежде чем создавать новую ветку. поэтому я сделал add .commit на хозяине и снова попытался объединить new_branch.

Я как-то перехожу к точке, где я нахожусь в new_branch, и удалил все, что было изначально в new_branch.

Как я могу вернуться к предыдущей фиксации? и любые идеи, почему я получаю исходную ошибку can't create directory?

ответ

1

Проблема с созданием каталогов - это, скорее всего, разрешения в каталоге git пытается создать новую папку. Какой OS/git-клиент вы используете (или в командной строке)?

Если коммит на вашем new_branch прошел успешно, ваша работа все равно должна быть на этом new_branch. Однако, поскольку слияние не работает корректно, оно еще не будет видно в главной ветке.

Сначала попробуйте создать только каталог, в котором он жалуется (при условии, что это один из ваших каталогов, а не git) и убедитесь, что он имеет соответствующие разрешения. После этого дайте слияние другой попытке (просто добавление каталога в рабочее дерево не должно влиять на нормальную работу git).

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

+0

С уважением, RDL, не уверен, какую «другую информацию» предоставить. Я на Ubuntu и просто использую командную строку git. Я не знаю, почему он будет жаловаться на права доступа к папке, так как он имеет все те же разрешения, что и другие складки. Но когда я сделал еще одну фиксацию, он перечислил кучу файлов, которые будут удалены, и они будут удалены из моего каталога. Это значительная часть моего кода! Я думаю, что это самая большая проблема, как мне вернуть все материалы, которые, как мне сказали, были удалены? – pedalpete

+0

Эй, @pedalpete, вы работаете локально или на удаленном хосте? Если вы используете «gitk», можете ли вы видеть, есть ли файлы в фиксации? Вероятно, нужно перейти на «new_branch» – RDL

+0

спасибо за вашу помощь RDL, что я не понял, так это то, что git фактически помещает в файл, где конфликты, и мне просто нужно было входить и убирать. Похоже, теперь все слилось. – pedalpete

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