URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 127286
[ Назад ]

Исходное сообщение
"Выпуск системы управления исходными текстами Git 2.36"

Отправлено opennews , 19-Апр-22 11:32 
После трёх месяцев разработки опубликован выпуск распределенной системы управления исходными текстами Git 2.36. Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=57040


Содержание

Сообщения в этом обсуждении
"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 11:32 
>Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов.

всегда было забавно на это смотреть - давайте создадим себе сложность и будем героически ее решать


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 11:40 
Но что здесь плохо?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 11:44 
неявное хеширование ВСЕЙ предыдущей истории в КАЖДОМ коммите

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:35 
>неявное хеширование ВСЕЙ предыдущей истории в КАЖДОМ коммите

и как тут это укладывается - "неявное" и "всей"?


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено fi , 19-Апр-22 12:36 
так работает  любой блокчейн, тот же BTC

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:51 
И это правильно.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Z , 19-Апр-22 14:34 
Теперь переведи на русский.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:19 
И что здесь плохо?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Анонимомус , 20-Апр-22 13:41 
В каждом коммите указан хеш его родителя(или родителей для мерджа), кроме того там есть хеш дерева файлов, в котором хеши конкретных файлов. В общем в коммите нет явного списка всей истории, она берется по цепочке.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 11:47 
Keep it simple, stupid. не нужно было разрешать переписывать историю вовсе.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено А где же каменты , 19-Апр-22 12:08 
Как это сделать без хеширования ? Интрудер просто вручную изменит Хистори и разрешения спрашивать не будет.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:39 
>Как это сделать без хеширования ?

это все детали реализации, понятно что нужен отпечаток в любом случае. но хэш всей истории по идее кажется не очень обязательным.
>Интрудер просто вручную изменит Хистори и разрешения спрашивать не будет.

в этом собсна и поинт - не должно быть простого способа(апи) это сделать


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:50 
> это все детали реализации

Анекдот про сову и мышей.

> не должно быть простого способа(апи) это сделать

Почему не должно? Кто это сказал? Почему ты выносишь решение сразу для всех компаний и всех разработчиков, как им работать Правильно™?


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:25 
>Почему не должно? Кто это сказал? Почему ты выносишь решение сразу для всех компаний и всех разработчиков, как им работать Правильно™?

окей, возможно слишком резковато выразился. почитай ниже про плюсы и минусы.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:20 
> в этом собсна и поинт - не должно быть простого способа(апи) это сделать

Вы серьёзно думаете, что грабителя остановит неудобство калитки?

...поколение подменяющих принципы "удобными API"...


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:24 
> не нужно было разрешать переписывать историю вовсе

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

> Keep it simple, stupid

Если нужно еще проще, то для тебя есть "Новая папка (281)".


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:33 
>Запретить переписывать историю можно на уровне репозиториев (в гитлабе, -хабе и т. д.).

это называется костыли. из-за их накопления потом ui и страдает кстати

>Если нужно еще проще, то для тебя есть "Новая папка (281)".

зачем сразу такие крайности. мне нравится идея hg в этом плане. он не менее распределеннее гита, к слову. по дефолту история не меняется. но если оочень зачем-то надо - такую фичу сделали, но запрятали подальше отдельным расширением (для тех кто пришел с гита видимо)


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:39 
> называется костыли

почему костыли? то, можно ли перезаписывать историю -- явно относится к политике компании. Где-то можно, где-то нельзя. Почему VCS должен это как-то ограничивать -- не ясно.

> если оочень зачем-то надо - такую фичу сделали

ну раз тоже сделали -- то тоже молодцы. Пусть возьмут с полки пирожок.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:49 
>явно относится к политике компании. Где-то можно, где-то нельзя.

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


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:10 
> не вижу ни одного плюса от возможности переписывать историю

в репе могут оказаться конфиденциальные данные или просто какой-то лишний крупный файл. Возможность править историю должна оставаться -- сама правка истории не должна оставаться незамеченной.

> до полного разламывания всей репы(особенно актуально для новичков)

Если новичок разломает репу -- то это будет его собственная репа с хелловорлдом. Или собственная копия репы реального проекта, но поскольку он новичок, то ему никто не даст запушить. Так что приведи другие примеры.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:22 
>в репе могут оказаться конфиденциальные данные

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

>какой-то лишний крупный файл

надо было не давать его комитить

> сама правка истории не должна оставаться незамеченной

с этим абсолютно согласен

>Если новичок разломает репу -- то это будет его собственная репа с хелловорлдом.

софт, который не стремится быть дружелюбным постепенно заменяется более удобным


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:28 
> в таком случае лучше явно репу удалить и переехать на новую

Чем это отличается от перезаписи истории? Тоже принципиально новый набор коммитов.

> надо было не давать его комитить

В идеальном мире никто не ошибается. да. Но, как говорил Линус, практика побеждает теорию. Всегда. Твое решение должно учитывать не только то, что пойдет ТАК, но и то, что пойдет НЕ ТАК.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:54 
> в репе могут оказаться конфиденциальные данные

Значит, они уже утекли, а в случае секретов ещё и скомпрометированы.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:23 
> он не менее распределеннее

Вы неграмотны, увы.

Нет, дело не только в правописании.  А в полном непонимании того, _почему_ в распределённой системе линейно нумеруемые ревизии не годятся -- даже не затрагивая адресацию по содержимому и далее со всеми остановками.

Пожалуйста, не лезьте в эти темы что-нить ляпнуть.

Почитайте лучше матчасть.

Сослужите себе как, надеюсь, в будущем специалисту хорошую службу.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено freehck , 19-Апр-22 14:01 
> не нужно было разрешать переписывать историю вовсе.

Тут какое-то жёсткое недопонимание работы git. Вот чтобы не было возможности переписывать историю и нужно:

>  неявное хеширование всей предыдущей истории в каждом коммите

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


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 15:02 
Разрешили менять историю(создали проблему) -> добавили проверку целостности (решили проблему). Про то что хеширование какое-то неявное хз, комент другого анонима

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено freehck , 19-Апр-22 15:04 
> Разрешили менять историю

Когда это вдруг разрешили менять историю?


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 15:36 
https://initialcommit.com/blog/4-git-commands-rewrite-commit...
когда впилили эти команды(и форс-пуш)

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено freehck , 19-Апр-22 15:54 
> https://initialcommit.com/blog/4-git-commands-rewrite-commit...
> когда впилили эти команды(и форс-пуш)

Дорогой анон, когда мы говорим про изменение истории, мы прежде всего говорим о возможности незаметного изменения какого-то коммита в истории. Все перечисленные команды, безусловно, этого не делают: они создают полностью новую историю коммитов, которую точно так же невозможно изменить.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:25 
Он некомпетентен, но активен.

PS: кому интересно понять немножко "за гит", но "на пальцах" -- см., например, http://tomayko.com/blog/2008/the-thing-about-git


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 17:05 
Опеннетчика хлебом не корми, дай позапрещать что-нибудь. Тебе как-то персонально жмёт в заду от того, что есть такая фича? Ты же понимаешь, что «запретить переписывать историю» невозможно в принципе. Да, можно усложнить этот процесс, но, как ты сам сказал, keep it simple. Это относится не только к созданию простых (но не проще, чем это необходимо!) решений, но и к созданию простых интерфейсов человек-компьютер. Что и реализовано в гите в данном случае — простой интерфейс к довольно сложной операции.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:26 
> Опеннетчика хлебом не корми, дай позапрещать что-нибудь.

При чём здесь опеннетчики?  Cancel-культурка растёт самое позднее от иудейской верхушки времён 33 года н.э., решившей "отменить" воскресение Лазаря.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено YetAnotherOnanym , 19-Апр-22 21:48 
Похоже, имя безумца Герострата и вправду забыли, а уж он-то пораньше Лазаря жил.
Сработала cancel-культурка!

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 22-Апр-22 01:25 
До "их" эры времени не было - громче всех держи cancel culture орет ее носитель...

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 20-Апр-22 13:56 
Вы против иудеев?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:01 
Если ты не решаешь ни каких проблем как объяснишь, то что тебе надо выделять финансирование?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено А где же каменты , 19-Апр-22 12:13 
Название нравится - взлетит.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:03 
Гит свежо, хипстово.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 22-Апр-22 01:27 
Торвальдс так то нормальный хипстер, годный.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:33 
На втором изображении:
>index 75a248188a..7074bbdd53 10644

разве правильно, что стоит значение "10644"?


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 20-Апр-22 01:11 
> разве правильно, что стоит значение "10644"?

А что не так с 10644? Казалось бы, обычные права на обычный файл.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено ANANAS , 19-Апр-22 12:39 
Как там mercurial? Будут ли переписывать с питона?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:28 
https://github.com/facebookexperimental/eden
Какая-то движуха есть. Надо будет потыкать

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 15:50 
будут. на перл.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 22-Апр-22 01:28 
Вопрос поставлен неверно. Будут ли помещать в инкубатор апача?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:46 
Слыхал где-то про какую-то darks, что тип круче Гита и тру хаскел пацаны только дарксом пользуются. Кто-нибудь слышал о ней что-нибудь, может прокомментировать?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 12:56 
Ща Pijul на ржавом более хайповый

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:13 
> Pijul

Как это произносится? Пижуль? Пихуль?


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:27 
На Лоре пишут, что через х. Автор мексиканец вроде

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Вадим , 19-Апр-22 14:00 
я бы сказал пи-юль :)

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:30 
Так важно не хайп, а трушность. Хаскел, скажем, не хайповый, но никто не станет спорить с тем, что Хаскел - тру

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено freehck , 19-Апр-22 14:05 
> Хаскел, скажем, не хайповый, но никто не станет спорить с тем, что Хаскел - тру

Конечно никто не станет спорить, что он не "тру", пока ты это самое "тру" не определишь нормально.

А так-то по минусам хаскеля можно сказать довольно много всего.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:29 
Нормально чему, кстати? :)

(отвечать необязательно, 1.25.23 интересней, ага)


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Z , 19-Апр-22 14:33 
> Хаскел - тру

Хоть один известный проект покажи. По моему это чисто маргинально-эксперементальный язык.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 15:11 
> Хоть один известный проект покажи. По моему это чисто маргинально-эксперементальный язык.

Pandoc?



"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 17:06 
Shellcheck. Если ты пишешь портянки на шелле без шелчека, твой код ужасен. Инфа сотка.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 17:31 
> Хоть один известный проект покажи.

Xmonad. GHC


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:28 
У darcs есть интересная (и, кажется, уникальная) фича -- переносить "смысл" изменений, т.е. вместо приложения буквального diff'а выводить разницу вида "переменную ABC везде заменили на DEF".

А так только хаскелятники знакомые ею и пользовались, да.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено DM , 19-Апр-22 23:57 
Был период где-то между появлениями GNU arch (tla) и GIT, когда не только хаскелятники использовали
darcs.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 13:31 
А что там с Conditional config includes based on remote URL ? Когда уже

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:30 
Что, сами дырок навертеть не в состоянии?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Андрей , 19-Апр-22 14:15 
> Подобное поведение может быть полезным для восстановления состояния после сбоев, когда нет уверенности в целостности локальных данных.

А что, git fsck не умеет однозначно сказать, целые данные или нет, и какие именно? Так чтобы если уж и пользоваться refetch, то тянуть только побитые.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Z , 19-Апр-22 14:31 
Git не нужен. Он только усложняет процесс. Там официальное руководство  тянет на докторскую диссертацию и уместить в голове все эти команды просто нереально.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено ыы , 19-Апр-22 15:07 
Это дает повод к появлению узких специалистов- тех кто знает например только git clone
или только git push.

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

Хорошо же! Новые рабочие места, Инновации... :)


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено ыы , 19-Апр-22 15:14 
Обучение опять же, сертификация... Многоуровневая сертификации.. Дипломированый "Git Cloner", Магистр "Git Pushing"...

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено ыы , 19-Апр-22 15:15 
Ухххх какие перспективы открываются...!!! :)

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 17:37 
Какую DVCS посоветуете?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 18:10 
mercurial

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Z , 19-Апр-22 20:07 
> Какую DVCS посоветуете?

newFolder -> oldNewFolder и т.д. для не_коммандной разработки бОльшее не_нужно, голова светлее будет, времени больше на девок (голосистых) 😏


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 20-Апр-22 03:04 
Уже не хватает, даже при некомандной разработке. Слишком много действий для создания новых папок, да ещё и как дифф получить - не понятно

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 20-Апр-22 12:52 
diff -urN oldFolder newFolder

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено OpenEcho , 19-Апр-22 21:26 
>  Какую DVCS посоветуете?

fossil-scm от авторов sqlite - делает тоже самое что и git но еще в прикуску имеет на борту встроенную вики, тикеты и даже форум (правда страшный как ад, но починить с CSS можно).

В принципе, весь sqlite на нем и делается


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено llolik , 19-Апр-22 18:52 
> уместить в голове все эти команды просто нереально.

Их и не надо полностью умещать в голове, надо просто знать что оно где-то там есть. Достаточно помнить самые попсовые и часто используемые в своём конкретном рабочем процессе. Для всего остального есть man (ну или вот это руководство).


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 19-Апр-22 21:58 
Или всегда можно загуглить дикий однострочник на баше(по типу закрытая всех неактивных веток или подобного)

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Z , 19-Апр-22 23:55 
> Или всегда можно загуглить дикий однострочник на баше(по типу закрытая всех неактивных
> веток или подобного)

Лишь бы усложнить жизнь, вместо одного changelog'а и пары дополнительных директорий с архивом.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено llolik , 20-Апр-22 08:46 
> Или всегда можно загуглить дикий однострочник на баше(по типу закрытая всех неактивных
> веток или подобного)

Или вообще существует такая замечательная вещь, как alias-ы. Позволяет забить длинную команду один раз и больше о ней не вспоминать.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Michael Shigorin , 19-Апр-22 19:31 
> уместить в голове все эти команды просто нереально

Пожалуйста, немедленно прекратите пользоваться интернетом, браузером, операционной системой, компьютером.  Ну или "логику" поправьте.


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено zog , 19-Апр-22 14:50 
Переход на SHA256 уже никогда не состоится?

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Сушилин , 19-Апр-22 20:14 
Да уже в пору на SHA3 переходить, хайпово, модно,быстро.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено OpenEcho , 19-Апр-22 21:31 
https://git-scm.com/docs/hash-function-transition/

https://lwn.net/Articles/811068/


"Выпуск системы управления исходными текстами Git 2.36"
Отправлено zog , 21-Апр-22 12:25 
Я это всё уже давно прочитал. Переход на SHA256 так и не состоялся и его поддержка недоделана.

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Аноним , 20-Апр-22 02:31 
Раздули этот Git. Mercurial по кайфу, но Bitbucket ещё в 2020 по моему перестал поддерживать, а больше ничего и нет

"Выпуск системы управления исходными текстами Git 2.36"
Отправлено Анонимомус , 20-Апр-22 13:58 
Чет незаметно подвижек в выпиливании perl и shell скриптов, давно уже пора выделить все в библиотеку или допилить libgit2.