LINUX.ORG.RU

Каким таким «неестесвенным образом»? Можно пример?

Я когда

 git merge --squash branch-name
делаю, все вполне естественно проходит.

Anatolik ★★
()

а что не так? какой способ «естественный»?

stevejobs ★★★★☆
()

А кто нибуть смог найти практическое применение для merge в git?

Пилишь новую фичу — создаешь ветку, после допила мержишь с основной веткой.

Deleted
()
Ответ на: комментарий от Anatolik

да но в этом случае мы получаем обычный а не merge-commit. в этом случае действительно все отлично ...

cvv ★★★★★
() автор топика
Ответ на: комментарий от annulen

естественно, мы ведь в этом случае не получаем merge-коммитов с конфликтами

cvv ★★★★★
() автор топика
Ответ на: комментарий от cvv

а ты попробуй?

Получилось. Сделал пустой репозиторий, один коммит, создал ветку newf. Добавил несколько изменений в файл, предпоследним коммитом создал новый файл. Сделал копию newf в newf-backup. Сделал git rebase -i master. Удалил из списка ненужный коммит, запустил. Оно мне сказало: «Ок, всё хорошо». Посмотрел — и правда всё хорошо. По крайней мере, я так себе это и представлял.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

ну вот смотри

* caa930e 
*   d1f2e2b Merge commit 'a2d9370' into m4
|\  
| * a2d9370 
* |   b30823f Merge commit '8c5c5e2' into m4
|\ \  
| |/  
| * 8c5c5e2 
* | c389c6d 
* | 595d6f7 
* |   b1767cb Merge commit 'b12e0bd' into m4
|\ \  
| |/  
| * b12e0bd 
* |   397c8b9 Merge commit '6a8021e' into m4
|\ \  
| |/  
| * 6a8021e 
* |   3e8b392 Merge commit '951a2cb' into m4
|\ \  
| |/  
| * 951a2cb 
* | 1209fbb 
* | 889aca2 
* | 00b983a 
* | c87b56f 
* | 467bc58 
* | 614e4c7 
* | d36d46e 
* | 8523393 
|/  
* 33af7cb 
* ff6dfa4 
* f8c46b7 
* c32bf45 
* 8d8dcc1 
* ec6558d 
* fa03fe9 
* 9875f84 

я допустим хочу из этой истории выкусить коммиты ff6dfa4 и ec6558d - при помощи rebase -i это неполучается несмотря на то что все остальные коммиты этот код не трогают.

cvv ★★★★★
() автор топика
Ответ на: комментарий от cvv

Теперь понял. У меня никогда такого не было, да. Я тебе на слово верю, что так не получится.

Может тебе поможет revert?

А вообще довольно дикое дерево (для меня).

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от cvv

я раньше пользовался базаром - он такие вещи делает на ура.

К счастью, мне не надо делать такие вещи и я не испытываю дискомфорта от их невозможности в git. Я думаю, тебе стоит по возможности вернуться к использованию bazaar, ибо навряд ли такое будут чинить в git'е.

i-rinat ★★★★★
()

Эээ ну вообще-то мержу ветки чуть ли не каждый день, как бы это одна из самых используемых функций...

Alve ★★★★★
()
Ответ на: комментарий от cvv

В целом, подобные манипуляции скорее плохая идея чем хорошая, но у меня вполне получилось. Достаточно добавить флаг -p, --preserve-merges, чтобы git не игнорировал merge коммиты, правда в документации сказано о возможных «багах» при переупонядочивании коммитов, что, в принципе, вполне ожидаемо.

xaizek ★★★★★
()
Ответ на: комментарий от anonymous

требует заново вручную выполнить все мерже начиная с 3e8b392

cvv ★★★★★
() автор топика
Ответ на: комментарий от anonymous

нет - проблемы начинаются на merge-коммитах типа 3e8b392

cvv ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Ну да, конечно

Счастливого бисекта, гы-гы.

Руки надо отрывать майнтейнерам, которые срали на своих пользователей

А что ты мне предъявы кидаешь, у меня даже прав на коммит нет

annulen ★★★★★
()

иногда пользуюсь для мэинтейнинга пакетов.

i_gnatenko_brain ★★★★
()
Ответ на: комментарий от cvv

а ты не делай тупняк в работе, тогда и не надо будет выпиливать цепочку коммитов хз из какого места перед мержем всего до кучи
а вообще есть мыло-рассылка в которой Линус понятным языком рассказывает как это всё делатся
нужно просто нагуглить

q11q11 ★★★★★
()
Ответ на: комментарий от annulen

Счастливого бисекта, гы-гы.

git bisect нормально обрабатывает любую историю.

PS. Топик ламеров, смотреть противно. Ещё бы спросили практическое применение для commit.

slovazap ★★★★★
()
Ответ на: комментарий от Anatolik

не то
есть большой текстовый док с продробным описанием и со схематическими ветками, куда что и как...
а не какой-то полу-форум

q11q11 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.