LINUX.ORG.RU

Не могу осилить git


0

2

Запутался в туевой хуче его команд. Не могу никак найти аналог hg strip. Хочу часть верхних ревизий снести. Может тут кто подскажет?

★★★★★

Всё, нашел. strip оказывается делается reset'ом, а revert checkout'ом. Хотя есть еще команда revert, которая творит какую-то неведомую %#$ню. Всё таки git делался не для людей.

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

revert создает коммит, который
откатывает изменения в выбранном коммите.

т.е видишь в коммите А кучу багов
делаешь git revert A
и можно забыть об этом коммите если нет конфликтов

h1t
()

мне никогда не нравилась идея давать «непромытым массам» возможность редактировать историю.

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

Я не хочу плодить свои же коммиты. hook не сработал на сервере и не дал мне возможности залить коммит. Поэтому, естественно, гораздо лучше привести коммит к требуемым стандартам чем плодить еще один.

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

> hook не сработал на сервере и не дал мне возможности залить коммит. Поэтому, естественно, гораздо лучше привести коммит к требуемым стандартам чем плодить еще один.

git commit --amend

git push -f origin

То?

nozh
()
Ответ на: комментарий от Reset

да это неприятно когда по недосмотру в истории видны сломанные под другой платформой билды и прочие недисциплинированные вещи. И все смотрят и хихикают. Но это лучше чем орлы удаляющие историю файла с невинным видом и словами «да там всего 2 ревизии» (c) сам видел.

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

С моей локальной историей пока я её никуда не оправил я могу творить всё что захочу и не вижу ничего в этом плохого.

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

>не для людей с mercurial головного мозга ;-)

Просто git сделали для инопланетян. В отличие от svn, hg и прочих, которые - для людей.

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

> не для людей с mercurial головного мозга ;-)

Нет такой болезни. «Git головного мозга» есть, а «mercurial головного мозга» - нет.

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

> мне никогда не нравилась идея давать «непромытым массам» возможность редактировать историю.

«Немытым массам» же. А такую возможность просто невозможно не дать - такова природа системы.

tailgunner ★★★★★
()

>Не могу осилить git

Reset

Было бы странно, если бы «смог осилить»

Led ★★★☆☆
()
Ответ на: комментарий от tailgunner

>«Немытым массам» же.

Ну да. я просто разучился уже переводить термины назад на русский :)

А такую возможность просто невозможно не дать - такова природа системы

так в том то и проблема. То что хорошо и удобно Линусу не всегда удачно вписывается в колхозные ряды.

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

> То что хорошо и удобно Линусу не всегда удачно вписывается в колхозные ряды.

Но Git очень популярен %)

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

> «mercurial головного мозга»

Увы, но mercurial написан на питоне, а не на правильных Cях... Это его главный минус.

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

>> «mercurial головного мозга»

Увы, но mercurial написан на питоне, а не на правильных Cях...

Писать такие программы на Си может себе позволить только Линус, который больше ничего не знает, но для которого завербовать армию кодеров - не проблема. Все остальные используют более подходящие языки - от Си++ (Monotone) до Python (Codeville, Bazaar-NG, Mercurial).

Это его главный минус.

Каким образом это минус?

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

>> не всегда удачно вписывается в колхозные ряды.

Угу, скажи это рубистам.

Подозреваю, что рубисты испольуют Git процентов на 20% :)

tailgunner ★★★★★
()

Кстати, раз уж зашёл разговор, скажите мне кто-нибудь аналоги команд hg in, hg out и hg heads.

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

процентов на 20% :)

Строить догадки можно любые. Открытую статистику по языкам нашел только на гитхабе. И там ruby+js просто подавляющая доля. Что совсем не удивительно. Сексибои прям таки липнут к моднячему сервису.

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

Кстати, очень показательноый комментарий: «For example it uses staging area (so called index) for iteratively preparing commits. This and other great and unique features of git make it really superior to hg and other SCMs I've ever seen», Демонстрирует глубину познаний %)

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

$ git log master..origin/master
$ git log origin/master..master

типа того

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

>> процентов на 20% :)

Строить догадки можно любые.

Для протокола: я имел в виду, что они используют возможности Git на 20%.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner
hg out        git fetch ; git log FETCH_HEAD..master
hg in         git fetch ; git log master..FETCH_HEAD

Твою ж дивизию!

Я лучше зеркало на mercurial подниму. Чую, что геморроя меньше будет.

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

что они используют возможности Git на 20%

Попахивает дискриминацией. Думаю большинство (не зависимо от языка) используют гит на уровне git pull && git ci -am && git push. А это даже на пятую часть возможностей не похоже.

И, сдаётся мне, абсолютно ничего бы не изменилось, будь они на меркуриале.

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

Чую, что геморроя меньше будет.

Дело привычки. Это только кажется криптограмотой, пока не понимаешь как гит внутри устроен. В этих строчках всё просто.

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

> сдаётся мне, абсолютно ничего бы не изменилось, будь они на меркуриале.

Наверное. Просто сама масса пользователей создает git имидж чего-то крутого, хотя на самом деле эта масса использует его в режиме лоботомии.

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

> Это только кажется криптограмотой, пока не понимаешь как гит внутри устроен.

Я вот понимаю, как git внутри устроен (все потомки Monotone устроены очень похоже), но не понимаю, нафига такие простые операции было нагружать таким синтаксисом :)

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

Показательно вот что. Когда я ковырял Bazaar (это было после того, как я освоил Mercurial), он мне показался весьма милым, простым и понятным. А при использовании Git себя чувствуешь как при разговоре с папуасом, ни ты его, ни он тебя понять в принципе не в состоянии. И дело не в том, что не знаешь внутреннее устройство. Как раз все эти блобы с деревьями понятны. Понятна и концепция отслеживания содержания, а не файлов (хоть и странна немного). Дело в том, что для управления всем этим используются какие-то совершенно невообразимые команды.

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

было нагружать таким синтаксисом :)

Это священная корова Торвальдса. Он почему-то решил, что любое сетевое общение может идти только через явно указанные git fetch/push. Каким чудом возник pull — не понятно, видимо, кто-то очень сильно капал на мозги. Отсюда все эти выкрутасы из составных команд. Сначала историю забираем, а только потом можем её шерстить.

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

Как раз все эти блобы с деревьями понятны. Понятна и концепция отслеживания содержания, а не файлов

Это не то. мало что дает. Нужно «просто» понять что такое история, как деревья объединяются и тупо выучить «человекопонятные» метки к узлам.

P.S. Я никаким боком не защищаю гит, боже упаси.

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

А ты обрати внимание на то, с каким визгом встречают почти каждое переписывание приложений с c# на си или си++. А как многие относятся к программам на яве? Разве питон чем-то лучше?

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

Увы, многим программистам есть разница в том, на чем написаны приложения. Медицинский факт. Здесь, вообще, много нерационального.

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

Питон есть. И на винде, и на линуксе. Даже hg есть вместе с svn и git.

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

В продолжение. А теперь представь для полноты картины, что mercurial был бы написан на лиспе. Стал бы такую систему использовать tailgunner?

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

> представь для полноты картины, что mercurial был бы написан на лиспе. Стал бы такую систему использовать tailgunner?

Стал бы. Я даже когда-то рассматривал вариант использования MetaCVS, которая на CL.

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

Питон много выиграл от того, кто разработал mercurial. Есть знаковые проекты, успех или неуспех которых переносится на язык и среду. Подозреваю, что симпатии нашего уважаемого коллеги archimag к haskell отчасти объясняются его опытом использования darcs.

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

> Питон много выиграл от того, кто разработал mercurial. Есть знаковые проекты, успех или неуспех которых переносится на язык и среду.

При всём хорошем отношении к hg и Мэтту, я не заметил их особого влияния на Python :)

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

Зато в моих глазах питон много выиграл. Я к нему стал относиться серьезнее именно из-за mercurial. Но не будем обобщать.

dave ★★★★★
()

Тред я не читал, но интересно - давали ли тут ссылки какие дельные по гиту? Мне его тоже освоить надо, а что-то пока жутко туплю.

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