2014-11-18 3 views
0

У меня есть локальный мастер, который синхронизируется с пультом дистанционного управления. Я создаю ветви функций. Допустим, я работаю над feature/a, а некоторые другие разработчики работают на feature/b. Это мой рабочий процесс для синхронизации с мастером:GIT - дополнительные файлы после слияния с мастером?

//Sync master with upstream and get branch b 
>master 
    - git pull upstream master 
    - git push origin master 

//Return to branch a and get latest code from master 
>feature/a 
    - git merge master 
    - resolve conflicts manually. 

На этом этапе, если я делаю git status я вижу много файлов поставил для фиксации. Большинство из них не добавлены мной, а другим разработчиком. Я не хочу фиксировать эти файлы, поскольку я их не изменил. Как мне это сделать? Я хочу записать множество файлов только для нескольких файлов, которые я изменил. Есть лучший способ сделать это?

ответ

0

вместо того, чтобы делать

git merge master 

Вы должны будете сделать

git rebase master 

Так что вам не придется беспокоиться о committng файлы, которые были изменены другими пользователями. Надеюсь, это поможет.

+0

Хорошо! Кроме того, это не повлияет ни на что другое? –

+0

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

+0

Спасибо! Пожалуйста, позвольте мне попробовать. –

0

Поскольку вы пытались объединить главную ветку в свою ветку/ветку, вам необходимо разрешить конфликты и выполнить ее как фиксацию слияния. Кроме того, результаты git merge и git rebase определенно одинаковы. Просто разница - это последовательность фиксации. Это означает, что в этом случае вы должны разрешить файлы конфликтов, а затем продолжить этап переадресации, даже если вы используете git rebase вместо git merge.

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

+0

Я разрешаю все конфликты, а затем проверяю статус для совершения. То есть, когда я вижу все файлы, которые были недавно добавлены другими пользователями, а не я! –

+0

Да, вы правы. Эти файлы были добавлены другими пользователями на главной ветке. Однако вы пытались объединить ветвь в свою ветку. Таким образом, вам также нужно было объединить их. Проверьте разницу между ведущей веткой и ветвью функций, прежде чем слить их. – sangheestyle

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