From: |
Zhenja Kaliuta 2:4500/1.59 |
04 Oct 2020 20:28 +0300 |
To: |
Victor Sudakov 2:5005/49 |
|
Subject: |
про git
|
Hi, Victor!
On Sun, 04 Oct 2020 22:05:38 +0700 Victor Sudakov writes:
VS> Dear Zhenja,
VS> 04 Oct 20 17:13, you wrote to me:
VS>>> Почитал про git bundle (по аналогии с hg bundle), но там какой-то
VS>>> слишком сложный процесс описан, надо на 2-м объявить bundle как
VS>>> remote, на 1-м его как-то хитро создать, синхронизировать...
ZK>> Вроде как без проблем совсем:
ZK>> /tmp/git1 % git log --oneline
ZK>> 016bbf6ffdf5 (HEAD -> master) 2
ZK>> aff2fdcca797 1
ZK>> /tmp/git1 % git bundle create /tmp/bundle HEAD
ZK>> Enumerating objects: 6, done.
ZK>> Counting objects: 100% (6/6), done.
ZK>> Compressing objects: 100% (3/3), done.
ZK>> Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
VS> А как в bundle запихать не всю историю, а только с коммита XXX по
VS> коммит YYY?
На сколько я понимаю, как и для git fetch при работе с удалённым
репозитарием, ему нужен ref, поэтому нужно оттежить или отбранчить YYY.
% git tag name-for-remote YYY
Затем
кратко: вместо HEAD в примере выше, XXX..name-for-remote (XXX не включается).
Длинно: это параметры к git rev-list (в мане есть несколько
примеров). Совсем подробно как ссылаться на разные коммиты в мане git
rev-parse.
VS> Или лучше bundle делать всегда полный, а он потом при
VS> unbundle/merge сообразит, с какого места надо импортировать
VS> изменения?
вопрос скорости и места. Можно и полный .git копировать и потом просто
fetch/pull из него (fetch/pull также можно сделать из бандла).
ID уникальны, должен брать только те объекты, которых нет локально,
поэтому можно сказать "сообразит".
Если же сильно короткая история, получается так:
/tmp/git2 % git bundle unbundle /tmp/bundle
error: Repository lacks these prerequisite commits:
error: 8330c1b650cce40e528ad024a2f3874804ee0bb3
ZK>> /tmp/git1 % cd ../git2
ZK>> /tmp/git2 % git log
ZK>> fatal: your current branch 'master' does not have any commits yet
ZK>> /tmp/git2 % git bundle unbundle /tmp/bundle
ZK>> 016bbf6ffdf56f9c04734b3500131ec4146ef790 HEAD
ZK>> /tmp/git2 % git merge 016bbf6ffdf56f9c04734b3500131ec4146ef790
VS> О, вот это круто, благодарю.
в принципе там в мане пример, где достаточно просто git pull
/tmp/bundle, когда ref из бандла мержится в текущий бранч.
From: |
Victor Sudakov 2:5005/49 |
04 Oct 2020 19:05 +0300 |
To: |
Zhenja Kaliuta 2:4500/1.59 |
|
Subject: |
про git
|
Dear Zhenja,
04 Oct 20 17:13, you wrote to me:
VS>> Почитал про git bundle (по аналогии с hg bundle), но там какой-то
VS>> слишком сложный процесс описан, надо на 2-м объявить bundle как
VS>> remote, на 1-м его как-то хитро создать, синхронизировать...
ZK> Вроде как без проблем совсем:
ZK> /tmp/git1 % git log --oneline
ZK> 016bbf6ffdf5 (HEAD -> master) 2
ZK> aff2fdcca797 1
ZK> /tmp/git1 % git bundle create /tmp/bundle HEAD
ZK> Enumerating objects: 6, done.
ZK> Counting objects: 100% (6/6), done.
ZK> Compressing objects: 100% (3/3), done.
ZK> Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
А как в bundle запихать не всю историю, а только с коммита XXX по коммит YYY?
Или лучше bundle делать всегда полный, а он потом при unbundle/merge сообразит,
с какого места надо импортировать изменения?
ZK> /tmp/git1 % cd ../git2
ZK> /tmp/git2 % git log
ZK> fatal: your current branch 'master' does not have any commits yet
ZK> /tmp/git2 % git bundle unbundle /tmp/bundle
ZK> 016bbf6ffdf56f9c04734b3500131ec4146ef790 HEAD
ZK> /tmp/git2 % git merge 016bbf6ffdf56f9c04734b3500131ec4146ef790
О, вот это круто, благодарю.
Victor Sudakov, VAS4-RIPE, VAS47-RIPN
From: |
Zhenja Kaliuta 2:4500/1.59 |
04 Oct 2020 17:13 +0300 |
To: |
Victor Sudakov 2:5005/49 |
|
Subject: |
про git
|
Hi, Victor!
On Sat, 03 Oct 2020 15:05:34 +0700 Victor Sudakov writes:
[...]
VS> Почитал про git bundle (по аналогии с hg bundle), но там какой-то
VS> слишком сложный процесс описан, надо на 2-м объявить bundle как
VS> remote, на 1-м его как-то хитро создать, синхронизировать...
Вроде как без проблем совсем:
/tmp/git1 % git log --oneline
016bbf6ffdf5 (HEAD -> master) 2
aff2fdcca797 1
/tmp/git1 % git bundle create /tmp/bundle HEAD
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Compressing objects: 100% (3/3), done.
Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
/tmp/git1 % cd ../git2
/tmp/git2 % git log
fatal: your current branch 'master' does not have any commits yet
/tmp/git2 % git bundle unbundle /tmp/bundle
016bbf6ffdf56f9c04734b3500131ec4146ef790 HEAD
/tmp/git2 % git merge 016bbf6ffdf56f9c04734b3500131ec4146ef790
/tmp/git2 % git log --oneline
016bbf6ffdf5 (HEAD -> master) 2
aff2fdcca797 1
VS> Нет способа попроще как в hg (в одном репозитории завернул в архив
VS> набор изменений xxxx..yyy, в другое место принёс и приложил)?
From: |
Zhenja Kaliuta 2:4500/1.59 |
04 Oct 2020 17:01 +0300 |
To: |
Victor Sudakov 2:5005/49 |
|
Subject: |
про git
|
Hi, Victor!
On Sat, 03 Oct 2020 15:05:34 +0700 Victor Sudakov writes:
VS> Dear All,
VS> Извините за оффтопик, спросить особо негде, а тут вроде есть пользователи
сабжа.
VS> Как перенести набор изменений из одного репозитория в другой (не
VS> связанный по сети)? Не одним общим патчем, а с историей.
git format-patch/git am подойдёт или ID должны быть теми же?
VS> Почитал про git bundle (по аналогии с hg bundle), но там какой-то
VS> слишком сложный процесс описан, надо на 2-м объявить bundle как
VS> remote, на 1-м его как-то хитро создать, синхронизировать...
VS> Нет способа попроще как в hg (в одном репозитории завернул в архив
VS> набор изменений xxxx..yyy, в другое место принёс и приложил)?
From: |
Eugene Grosbein grosbein.net |
03 Oct 2020 18:14 +0300 |
To: |
Andrey Melnikoff banana.localnet |
|
Subject: |
Аварийный вход в LAN через сотовый модем
|
03 окт. 2020, суббота, в 14:11 NOVT, Andrey Melnikoff написал(а):
>>>> Потому и модель с двумя внешними антеннами LTE.
AM>>> Да они все со внешними антеннами.
AM>> Покажи мне модем формата mini-PCIE с встроенными антеннами. А?
>> А вот я ссылочку кидал, там есть аппаратные ревизии с внешними
>> и со встроенными антеннами.
AM> Куда ссылочку? Давай прямую ссылку на mini-PCIE формата модем с
встроенными
AM> антеннами.
В данном контексте меня не интересуют "модемы mini-PCIE со встроенными
антеннами", речь про внешние роутеры и ссылочка была на роутер
с аппаратной ревизией со встроенной антенной.
>>> Hету в PPP этих MAC-ов.
AM> А чего не L2TPv3 сразу, там броадкастик с мультикстиком можно получить,
AM> SSDP всякие.
А не надо.
Eugene
From: |
Andrey Melnikoff <1187514706@banana.localnet> |
03 Oct 2020 14:11 +0300 |
To: |
Eugene Grosbein grosbein.net |
|
Subject: |
Аварийный вход в LAN через сотовый модем
|
From: "Andrey Melnikoff"
Eugene Grosbein wrote:
> 03 окт. 2020, суббота, в 00:35 NOVT, Andrey Melnikoff написал(а):
> AM>>> Да вопрос не в 20 мегабитах. Вопрос в удалении от вышки. Все эти
> AM>>> перделки-свистелки имеют один интересный ньюанс - если прием плохой,
то
> AM>>> оно
> >>> Потому и модель с двумя внешними антеннами LTE.
> AM>> Да они все со внешними антеннами.
> >> Да прям.
> AM> Покажи мне модем формата mini-PCIE с встроенными антеннами. А?
> А вот я ссылочку кидал, там есть аппаратные ревизии с внешними
> и со встроенными антеннами.
Куда ссылочку? Давай прямую ссылку на mini-PCIE формата модем с встроенными
антеннами.
> AM>> Если вам их не доложили, сходить в
> AM>> ближайшую лавку и купить 2 разъема всегда можно. Лень идти - китайцы
> AM>> пришлют хоть чёрта лысого.
> >> А смысл? Давно китайцы сразу предлагают комплектации нужные, докупать
ещё.
> AM> Там в сортах говна разбираться надо самому или плотно сидеть на форумах,
в
> AM> попытке понять - из каких палок сделан очередной китайский сверхдешевый
> AM> железк. Вон даже ты, рекламируя EOL'ный MR6400 ни разу не скзал, что
> AM> оно-же
> AM> MR-150.
> AM> И скорее всего даже и не знаешь, что там за модем стоит.
> И мне не надо этого знать, пока оно работает.
Понятно, консумер обыкновенус.
[...]
> >> Hету в PPP этих MAC-ов.
> AM> Hу вот, методом нескольких итераций мы таки пришли к выводу, что у нас
> AM> L2TPv2.
> AM> Правда так и не понятно, нахрен он тут нужен.
> L2TP это пример стандартного протокола, который с одной стороны
> стандартно инкапсулирует в себя PPP, а с другой сам стандартно
инкапсулируется
> в UDP, чтобы легко пролазить через NAT опсоса, выдающего серые адреса.
3 ненужных прослойки, зато стандартно. Академичненько, так сказать. А чего
не L2TPv3 сразу, там броадкастик с мультикстиком можно получить, SSDP
всякие.
[...]
> AM> 64 bytes from 8.8.8.8: icmp_seq=30 ttl=50 time=78002 ms
> AM> 64 bytes from 8.8.8.8: icmp_seq=31 ttl=50 time=77002 ms
> AM> ....
> AM> выясняй сам, где были эти пакеты и в чьих буферах.
> А я выяснял, причём выяснить это очень легко: подключаешь
> услугу передачи данных напрямую по PPP через USB-модем с симуляцией
> последовательного порта и наблюдаешь такие вот задержки и потери на IP,
> но при этом LCP echo внутри операторского PPP бегают чётенько
> без задержек и потерь. Очереди эти на стороне оператора,
> модемы не виноваты.
Всё, теперь всё понятно. Разговаривать с тобой дальше - бессмысленно, т.к.
ты не в теме. Верь в провайдерский PPP, магический LCP без задержек дальше
сам.
Как и в железные роутеры с "нетакими USB свистками", LTE модемы на pci-e
шине, перегрузки таблиц трансляции и прочие страшные ужасы этого вашего
инторнета.
From: |
Victor Sudakov 2:5005/49 |
03 Oct 2020 12:05 +0300 |
To: |
All |
|
Subject: |
про git
|
Dear All,
Извините за оффтопик, спросить особо негде, а тут вроде есть пользователи
сабжа.
Как перенести набор изменений из одного репозитория в другой (не связанный по
сети)? Не одним общим патчем, а с историей.
Почитал про git bundle (по аналогии с hg bundle), но там какой-то слишком
сложный процесс описан, надо на 2-м объявить bundle как remote, на 1-м его
как-то хитро создать, синхронизировать...
Нет способа попроще как в hg (в одном репозитории завернул в архив набор
изменений xxxx..yyy, в другое место принёс и приложил)?
Victor Sudakov, VAS4-RIPE, VAS47-RIPN
From: |
Eugene Grosbein grosbein.net |
03 Oct 2020 11:48 +0300 |
To: |
Andrey Melnikoff banana.localnet |
|
Subject: |
Аварийный вход в LAN через сотовый модем
|
03 окт. 2020, суббота, в 00:35 NOVT, Andrey Melnikoff написал(а):
AM>>> там в железе есть GPIO "взбодрить повисшие херовые дороги".
>>> Он хорош тем, что в него не надо втыкать USB-свисток, там слот для
>>> SIM-карты.
AM>> Он в него уже воткнут, только в формате mini-PCIE.
>> USB и PCI-E дааалеко не одно и то же.
AM> В данном случае - ОДHО. Ибо это просто формат разъема
Hеправда. Это ещё и совершенно разные протоколы работы хост/девайс.
AM> неонка, т.е. задействован только USB + питание + линии к sim slot.
AM> Если ты такой верующий в сказки, о дешевых LTE модемах cat 4 за 30$ -
AM> то не теряйся, начинай налаживать сбыт. В нашей вселенной, где они минимум
AM> по $60 у китайцев на али - спрос будет.
Я не верю в стабильные и дешевые USB-модемы, именно поэтому рекомендовал
вместо них проверенный роутер.
AM> И да, в большинстве этих говнороутеров шина PCI даже если и есть, то на
ней
AM> сидит WiFi. А самый большой смех - зачастую модем содержит в себе мощнее
AM> процессор, больше памяти и флеша, чем тот роутуер в который он воткнут.
Поэтому я через такой LTE-роутер гоню единственный UDP-поток с VPN-трафиком,
в частности и для того, чтобы у него не пухла таблица трансляции NAT,
что замедлило бы его работу. Hо узкое место всё равно оператор, не железка.
Eugene
--
И знатную леди от Джуди О'Греди
Hе сможет никто отличить.
From: |
Eugene Grosbein grosbein.net |
03 Oct 2020 11:44 +0300 |
To: |
Andrey Melnikoff banana.localnet |
|
Subject: |
Аварийный вход в LAN через сотовый модем
|
03 окт. 2020, суббота, в 00:35 NOVT, Andrey Melnikoff написал(а):
AM>>> Да вопрос не в 20 мегабитах. Вопрос в удалении от вышки. Все эти
AM>>> перделки-свистелки имеют один интересный ньюанс - если прием плохой, то
AM>>> оно
>>> Потому и модель с двумя внешними антеннами LTE.
AM>> Да они все со внешними антеннами.
>> Да прям.
AM> Покажи мне модем формата mini-PCIE с встроенными антеннами. А?
А вот я ссылочку кидал, там есть аппаратные ревизии с внешними
и со встроенными антеннами.
AM>> Если вам их не доложили, сходить в
AM>> ближайшую лавку и купить 2 разъема всегда можно. Лень идти - китайцы
AM>> пришлют хоть чёрта лысого.
>> А смысл? Давно китайцы сразу предлагают комплектации нужные, докупать ещё.
AM> Там в сортах говна разбираться надо самому или плотно сидеть на форумах, в
AM> попытке понять - из каких палок сделан очередной китайский сверхдешевый
AM> железк. Вон даже ты, рекламируя EOL'ный MR6400 ни разу не скзал, что
оно-же
AM> MR-150.
AM> И скорее всего даже и не знаешь, что там за модем стоит.
И мне не надо этого знать, пока оно работает.
>> Производство же, куча народу, там даже двух сеток /24 не хватает
>> под адресацию.
AM> Так сделай /22, в чем проблема-то? в 10.0.0.0 аж /8 свободно :-P
Hикаких проблем, так и сделано примерно.
>> Hету в PPP этих MAC-ов.
AM> Hу вот, методом нескольких итераций мы таки пришли к выводу, что у нас
L2TPv2.
AM> Правда так и не понятно, нахрен он тут нужен.
L2TP это пример стандартного протокола, который с одной стороны
стандартно инкапсулирует в себя PPP, а с другой сам стандартно инкапсулируется
в UDP, чтобы легко пролазить через NAT опсоса, выдающего серые адреса.
AM>> А внутре этого - шифрованный SSH, через который героически лезет админ,
AM>> посмотреть - это сторож Петрович выдернул что-то из розетки, чтоб чайник
AM>> вскипятить, или обдолбанный тажмык экскаватр кабель йхтурмакапалаь...
AM>> Ой, уже не не лезет, LCP Echo где-то там, в бездонных буферах китайского
AM>> LTE модема вторую минуту ждет своей очереди на отправку.
>> Да откуда там такие очереди-то.
AM> От китайцев, Женя. Специально для тебя - изнапрягал все сервера
микрософта,
AM> чтоб
AM> выгрузили мне историю с новомдного хипстерского скайпика.
AM> Вот это мегафон, июнь его года:
AM> - --- 1.1.1.1 ping statistics ---
AM> 161 packets transmitted, 58 received, 63% packet loss, time 162986ms
AM> rtt min/avg/max/mdev = 332.243/11299.815/31188.893/8609.869 ms, pipe 31
AM> вот это чуть пораньше, что именно - я не вспомню.
AM> PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
AM> 64 bytes from 8.8.8.8: icmp_seq=22 ttl=50 time=83261 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=23 ttl=50 time=82261 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=24 ttl=50 time=81399 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=25 ttl=50 time=80440 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=26 ttl=50 time=79560 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=27 ttl=50 time=78801 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=28 ttl=50 time=79420 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=29 ttl=50 time=78982 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=30 ttl=50 time=78002 ms
AM> 64 bytes from 8.8.8.8: icmp_seq=31 ttl=50 time=77002 ms
AM> ....
AM> выясняй сам, где были эти пакеты и в чьих буферах.
А я выяснял, причём выяснить это очень легко: подключаешь
услугу передачи данных напрямую по PPP через USB-модем с симуляцией
последовательного порта и наблюдаешь такие вот задержки и потери на IP,
но при этом LCP echo внутри операторского PPP бегают чётенько
без задержек и потерь. Очереди эти на стороне оператора,
модемы не виноваты.
AM> И возвращаясь к твоей
AM> панацее
AM> LCP Echo - она тут не поможет, потому, что в данном канале - пинг с
интервалом
AM> в 5 секунд еще заставляет модем держаться за вышку, а в 10 - уже нет.
Hу так ставь период LCP echo внутри L2TP/PPP в 5 секунд,
какие проблемы-то? Оно обернётся в UDP, ровно такой же IP-пакет,
как и ping твой.
AM>> Буйство технологий, все в прибыли. Женя протирает сертификатики по циске
AM> с ипсеком,
>> Цисками тут и не пахнет.
AM> Ими тут воняет. От ipsec, от L2TP.
С добрым утром. Hи IPSec, ни L2TP не являются проприетарными цискиными
протоколами и я их на FreeBSD гоняю, ни одна циска не пострадала.
AM>> опсос радостно считает
>> Чо?
AM> Ты уже забыл, что у нас тариф "знатный нищеброд" и мы целимся попасть в 20
AM> мегабайт хотя-бы в день, а не в час?
Hет, не целимся. У нас 20-30 гигабайт в абонплате на месяц на самом
нищебродском тарифе, других в нашей деревне нет.
AM> А теперь расскажи мне, нахрена админу с %ECHOTAG% нужен твой L2TP?
Пролазить внутри UDP через операторский NAT.
AM> У меня вот получается с одним autossh попадать в те самый далёкие перди
посреди
AM> леса.
AM> Зачем в данной задаче - L2TP, расскажи, а?
Для NAT pass-through.
>> Интерактивный TCP в принципе не предназначен для работы в средах с большим
>> количеством потерь и только попробуй вспомнить про telnet с line mode.
AM> А смысл мне от отого, среда передачи потеряет один пакет с одним байтиком,
или
AM> один пакет побольше с много байтиков? Так тут есть даже обратная
зависимость -
AM> мелкие пакеты худо-бедно лезут, а большие - видимо до вышки не долетают,
AM> стираются по дороге.
Так и есть, именно поэтому на PPP-интерфейсе через такой линк стоит mtu 576,
сильно помогает уменьшить потери.
Eugene
--
И кого не любишь, в лицо не знать, и смотреть на звезды и жить спокойно.
From: |
Andrey Melnikoff <1187514705@banana.localnet> |
03 Oct 2020 00:35 +0300 |
To: |
Eugene Grosbein grosbein.net |
|
Subject: |
Аварийный вход в LAN через сотовый модем
|
From: "Andrey Melnikoff"
Eugene Grosbein wrote:
> 02 окт. 2020, пятница, в 04:11 NOVT, Andrey Melnikoff написал(а):
> AM>> там в железе есть GPIO "взбодрить повисшие херовые дороги".
> >> Он хорош тем, что в него не надо втыкать USB-свисток, там слот для
> >> SIM-карты.
> AM> Он в него уже воткнут, только в формате mini-PCIE.
> USB и PCI-E дааалеко не одно и то же.
В данном случае - ОДHО. Ибо это просто формат разъема, а унутре него -
неонка, т.е. задействован только USB + питание + линии к sim slot.
Если ты такой верующий в сказки, о дешевых LTE модемах cat 4 за 30$ -
то не теряйся, начинай налаживать сбыт. В нашей вселенной, где они минимум
по $60 у китайцев на али - спрос будет.
И да, в большинстве этих говнороутеров шина PCI даже если и есть, то на ней
сидит WiFi. А самый большой смех - зачастую модем содержит в себе мощнее
процессор, больше памяти и флеша, чем тот роутуер в который он воткнут.