2016-01-24 5 views
0

Мы развиваемся с нескольких месяцев с git, и все мы новичок в git. Теперь мы развиваем некоторую функциональность в ветке, где некоторые вещи пошло очень не так - неправильные слияния с другой веткой, а не с мастером, переформатированием, неправильным обращением и т. Д. Теперь я не хочу пытаться восстановить ветку, потому что она слишком запутана.git merge branch of branch to master

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

ответ

1

Мой вопрос теперь: это можно сделать ответвление от этой отрасли (прежде, чем это было перепутано)

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

git checkout -b <new branch> <SHA-1> 

сейчас у вас будет новая ветвь «запуск», как данный SHA-1, в качестве основы для всей вашей работы.

продолжать развитие, а затем объединить ветвь (ветви), чтобы освоить ..

С этого момента вы работаете на вашей отрасли, и вы можете делать все, что вам гонорар как делать с ним.

+0

Я был немного неясен, я уже создал ветку от конкретной суммы SHA-1. Но спасибо за ваш ответ. Я немного shilly-shally, потому что несколько дней назад мы потеряли некоторые коммиты из-за неправильного слияния и перезагрузки. – smsnheck

+0

Возможно, вы не видите коммиты в своем журнале, но вы их не потеряли, они все еще хранятся в git (если в течение этого времени не было gc) – CodeWizard

2

Вы всегда можете сделать локальную копию всего своего репо и выполнить «тестовый прогон», где вы пытаетесь сделать страшное слияние. Если вы испортите этот лоток тестовой копией и повторите попытку в худшем случае. Но в 100% случаев «страшное» слияние оказывается намного проще, чем я думал. Линус сделал git довольно чертовски надежным.

В конце дня вы можете объединиться, а затем сначала оставить все несанкционированное. Затем пройдите через статус git и разберитесь и убедитесь, что это то, что вы ожидали. Если это так, запустите с ним. Вы всегда можете откатиться, если что-то пропустили.