<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Some stuff (Записи о git)</title><link>https://psss.site/</link><description></description><atom:link href="https://psss.site/categories/cat_git.xml" rel="self" type="application/rss+xml"></atom:link><language>ru</language><copyright>Contents © 2026 &lt;a href="mailto:none@example.com"&gt;None&lt;/a&gt; 
&lt;br/&gt;
Все материалы доступны как &lt;a rel="license" href="http://creativecommons.org/publicdomain/zero/1.0/"&gt;
общественное достояние CC0 1.0 Universal (CC0 1.0) Public Domain Dedication&lt;/a&gt;.
</copyright><lastBuildDate>Sat, 10 Oct 2026 15:26:39 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Фильтрация репозиториев git</title><link>https://psss.site/posts/git-filter-repo/</link><dc:creator>None</dc:creator><description>&lt;h3&gt;Введение&lt;/h3&gt;
&lt;p&gt;Отличный инструмент для изменения репозиториев (с переписыванием и
фильтрацией истории) -  &lt;a href="https://github.com/newren/git-filter-repo"&gt;git-filter-repo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Написан на python в виде одного файла-скрипта и является более удобной
заменой &lt;code&gt;git filter-branch&lt;/code&gt; и &lt;code&gt;BFG Repo Cleaner&lt;/code&gt;.&lt;/p&gt;
&lt;h3&gt;Запуск под Windows&lt;/h3&gt;
&lt;p&gt;Для запуска под Windows в виде команды можно положить скрипт в каталог,
прописанный в системной переменной окружения &lt;code&gt;PATH&lt;/code&gt; и создать,
для более удобного запуска в консоли, 
рядом bat-файл следующего содержания:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="k"&gt;echo&lt;/span&gt; off
&lt;span class="k"&gt;set&lt;/span&gt; &lt;span class="nv"&gt;PP&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;%~dp0&lt;/span&gt;
python &lt;span class="nv"&gt;%PP%&lt;/span&gt;git-filter-repo.py &lt;span class="nv"&gt;%*&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Примеры использования&lt;/h3&gt;
&lt;p&gt;Замена строки во всех файлах:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--replace-text&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'find==&amp;gt;replacement'&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Сохранить выбранный каталог (остальные будут удалены).
Можно указать несколько каталогов, для этого надо добавить аргументов &lt;code&gt;--path&lt;/code&gt;.&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path&lt;span class="w"&gt; &lt;/span&gt;path/to/folder&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;--path&lt;span class="w"&gt; &lt;/span&gt;path/to/another&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;--path....&lt;span class="o"&gt;]&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Удалить выбранный каталог.
Можно указать несколько каталогов, для этого надо добавить аргументов &lt;code&gt;--path&lt;/code&gt;.&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path&lt;span class="w"&gt; &lt;/span&gt;path/to/folder&lt;span class="w"&gt; &lt;/span&gt;--invert-paths
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Переименовать (переместить) каталог:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path-rename&lt;span class="w"&gt; &lt;/span&gt;path/to/folder/:newpath/for/folder/
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Переместить каталог из глубин на верхний уровень:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path-rename&lt;span class="w"&gt; &lt;/span&gt;path/to/folder/:
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Удалить файлы по маске:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path-glob&lt;span class="w"&gt; &lt;/span&gt;*.bak&lt;span class="w"&gt; &lt;/span&gt;--path-glob&lt;span class="w"&gt; &lt;/span&gt;*.old&lt;span class="w"&gt; &lt;/span&gt;--invert-paths
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Запуск анализа репозитория:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--analyze&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;--force&lt;span class="o"&gt;]&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Если надо оставить один каталог из глубины и сделать его корневым
это можно сделать либо двумя командами их вышеперечисленных,
либо одной короткой командой:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;&lt;span class="c1"&gt;## Either that way:&lt;/span&gt;
git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;directory&amp;gt;/
git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--path-rename&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;directory&amp;gt;/:

&lt;span class="c1"&gt;## Or that way:&lt;/span&gt;
git-filter-repo&lt;span class="w"&gt; &lt;/span&gt;--subdirectory-filter&lt;span class="w"&gt; &lt;/span&gt;&amp;lt;directory&amp;gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;И это далеко не всё, что умеет делать этот скрипт.&lt;/p&gt;
&lt;p&gt;Более подробное описание здесь: &lt;a href="https://www.mankier.com/1/git-filter-repo"&gt;https://www.mankier.com/1/git-filter-repo&lt;/a&gt;.&lt;/p&gt;</description><category>git</category><guid>https://psss.site/posts/git-filter-repo/</guid><pubDate>Mon, 21 Nov 2022 21:17:11 GMT</pubDate></item><item><title>git submodules</title><link>https://psss.site/posts/git-submodules/</link><dc:creator>None</dc:creator><description>&lt;h2&gt;Добавление субмодуля&lt;/h2&gt;
&lt;p&gt;Добавить субмодуль можно командой:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;-b&lt;span class="w"&gt; &lt;/span&gt;branch&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;--name&lt;span class="w"&gt; &lt;/span&gt;name&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;url&lt;span class="w"&gt; &lt;/span&gt;path
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Например:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;-b&lt;span class="w"&gt; &lt;/span&gt;master&lt;span class="w"&gt; &lt;/span&gt;../../bf531/libaaa&lt;span class="w"&gt; &lt;/span&gt;shared/libaaa
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Лучше чтобы URL был относительным (само собой если репозиторий
находится на том же сервере). Иначе могут быть проблемы
при клонировании разными способами (по &lt;code&gt;ssh&lt;/code&gt;, &lt;code&gt;https&lt;/code&gt; и т. п.).&lt;/p&gt;
&lt;h2&gt;Изменить url субмодуля&lt;/h2&gt;
&lt;h3&gt;Новый способ&lt;/h3&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git submodule set-url -- &amp;lt;path&amp;gt; &amp;lt;url&amp;gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Пример:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git submodule set-url -- shared/libglobal ../../libs/libglobal
&lt;/pre&gt;&lt;/div&gt;

&lt;h3&gt;Старый способ&lt;/h3&gt;
&lt;p&gt;Отредактировать файл &lt;code&gt;.gitmodules&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Можно редактировать как обычный файл, а можно командами с консоли:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;--file&lt;span class="o"&gt;=&lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;submodule.libaaa.url&lt;span class="w"&gt; &lt;/span&gt;../../bf531/libaaa
git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;--file&lt;span class="o"&gt;=&lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;submodule.libaaa.branch&lt;span class="w"&gt; &lt;/span&gt;dev-branch
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;После этого вызвать:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;sync
git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;update&lt;span class="w"&gt; &lt;/span&gt;--init&lt;span class="w"&gt; &lt;/span&gt;--recursive
&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Удалить субмодуль&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Удалить секцию из &lt;code&gt;.gitmodules&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Удалить секцию из &lt;code&gt;.git/config&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Запустить &lt;code&gt;git rm --cached path_to_submodule&lt;/code&gt; (без слеша на конце).&lt;/li&gt;
&lt;li&gt;Закоммитить изменения &lt;code&gt;git add .gitmodules; git commit -m "remove submodule"&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Удалить каталог с файлами субмодуля &lt;code&gt;rm -rf path_to_submodule&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;&lt;span class="nv"&gt;sname&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;libaaa
&lt;span class="nv"&gt;spath&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;shared/libaaa

git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;--remove-section&lt;span class="w"&gt; &lt;/span&gt;submodule.&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;sname&lt;/span&gt;&lt;span class="p"&gt;%/&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.git/config&lt;span class="w"&gt; &lt;/span&gt;--remove-section&lt;span class="w"&gt; &lt;/span&gt;submodule.&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;sname&lt;/span&gt;&lt;span class="p"&gt;%/&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
git&lt;span class="w"&gt; &lt;/span&gt;rm&lt;span class="w"&gt; &lt;/span&gt;--cached&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;sname&lt;/span&gt;&lt;span class="p"&gt;%/&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;

git&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;.gitmodules
git&lt;span class="w"&gt; &lt;/span&gt;commit
rm&lt;span class="w"&gt; &lt;/span&gt;-rf&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;spath&lt;/span&gt;&lt;span class="p"&gt;%/&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;h2&gt;Инициализация субмодулей по существующему файлу .gitmodules&lt;/h2&gt;
&lt;div class="code"&gt;&lt;pre class="code literal-block"&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;

&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e

git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;--get-regexp&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'^submodule\..*\.path$'&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;read&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;path_key&lt;span class="w"&gt; &lt;/span&gt;path
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nv"&gt;url_key&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$path_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'s/\.path/.url/'&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nv"&gt;url&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;--get&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$url_key&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$path&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;</description><category>git</category><guid>https://psss.site/posts/git-submodules/</guid><pubDate>Tue, 14 Dec 2021 10:11:12 GMT</pubDate></item><item><title>Разные полезности при работе с git</title><link>https://psss.site/posts/git-tips/</link><dc:creator>None</dc:creator><description>&lt;section id="git"&gt;
&lt;h2&gt;Разные полезности при работе с git&lt;/h2&gt;
&lt;section id="gitconfig"&gt;
&lt;h3&gt;Шаблон файла для настройки &lt;cite&gt;.gitconfig&lt;/cite&gt;&lt;/h3&gt;
&lt;p&gt;Работает и под windows.&lt;/p&gt;
&lt;p&gt;Файл находится в "домашнем" каталоге пользователя.
Под windows он (каталог) определяется переменной среды &lt;code class="docutils literal"&gt;HOME&lt;/code&gt; или (если переменная не задана),
то в зависимости от версии ОС &lt;code class="docutils literal"&gt;&lt;span class="pre"&gt;C:\Users\username\&lt;/span&gt;&lt;/code&gt; или &lt;code class="docutils literal"&gt;&lt;span class="pre"&gt;C:\Documents&lt;/span&gt; and settings\username&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Под linux обычно это &lt;code class="docutils literal"&gt;/home/username&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;В домашнем каталоге следует создать подкаталог &lt;code class="docutils literal"&gt;certs&lt;/code&gt; и
положить туда файл с сертификатами
&lt;a class="reference external" href="https://psss.site/posts/git-tips/certs/ca-bundle.crt"&gt;ca-bundle.crt&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Файл настроек:&lt;/p&gt;
&lt;div class="code"&gt;&lt;table class="codetable"&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-1"&gt;&lt;code data-line-number=" 1"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-1" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-1"&gt;&lt;/a&gt;&lt;span class="k"&gt;[core]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-2"&gt;&lt;code data-line-number=" 2"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-2" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-2"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;editor&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;notepad.exe&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-3"&gt;&lt;code data-line-number=" 3"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-3" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-3"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;autocrlf&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-4"&gt;&lt;code data-line-number=" 4"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-4" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-4"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;whitespace&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;trailing-space,space-before-tab,indent-with-non-tab,cr-at-eol&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-5"&gt;&lt;code data-line-number=" 5"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-5" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-5"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;quotePath&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;false&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-6"&gt;&lt;code data-line-number=" 6"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-6" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-6"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;compression&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;9&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-7"&gt;&lt;code data-line-number=" 7"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-7" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-7"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;commitGraph&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-8"&gt;&lt;code data-line-number=" 8"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-8" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-8"&gt;&lt;/a&gt;&lt;span class="k"&gt;[http]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-9"&gt;&lt;code data-line-number=" 9"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-9" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-9"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;sslCAInfo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;~/certs/ca-bundle.crt&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-10"&gt;&lt;code data-line-number="10"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-10" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-10"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;sslCAPath&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;~/certs&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-11"&gt;&lt;code data-line-number="11"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-11" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-11"&gt;&lt;/a&gt;&lt;span class="k"&gt;[alias]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-12"&gt;&lt;code data-line-number="12"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-12" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-12"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;co&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;checkout&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-13"&gt;&lt;code data-line-number="13"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-13" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-13"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;ci&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;commit&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-14"&gt;&lt;code data-line-number="14"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-14" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-14"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;st&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;status&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-15"&gt;&lt;code data-line-number="15"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-15" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-15"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;br&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;branch&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-16"&gt;&lt;code data-line-number="16"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-16" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-16"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;hist&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-17"&gt;&lt;code data-line-number="17"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-17" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-17"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;sub&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;submodule update --init --recursive&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-18"&gt;&lt;code data-line-number="18"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-18" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-18"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;rd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;branch -rd&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-19"&gt;&lt;code data-line-number="19"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-19" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-19"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;rr&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;branch -rd&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-20"&gt;&lt;code data-line-number="20"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-20" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-20"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;chmod&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;update-index --chmod=+x&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-21"&gt;&lt;code data-line-number="21"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-21" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-21"&gt;&lt;/a&gt;&lt;span class="k"&gt;[push]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-22"&gt;&lt;code data-line-number="22"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-22" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-22"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;default&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;matching&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-23"&gt;&lt;code data-line-number="23"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-23" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-23"&gt;&lt;/a&gt;&lt;span class="k"&gt;[fetch]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-24"&gt;&lt;code data-line-number="24"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-24" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-24"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;recurseSubmodules&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-25"&gt;&lt;code data-line-number="25"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-25" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-25"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;prune&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-26"&gt;&lt;code data-line-number="26"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-26" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-26"&gt;&lt;/a&gt;&lt;span class="k"&gt;[submodule]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-27"&gt;&lt;code data-line-number="27"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-27" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-27"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;recurse&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-28"&gt;&lt;code data-line-number="28"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-28" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-28"&gt;&lt;/a&gt;&lt;span class="k"&gt;[sendpack]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-29"&gt;&lt;code data-line-number="29"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-29" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-29"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;sideband&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;false&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-30"&gt;&lt;code data-line-number="30"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-30" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-30"&gt;&lt;/a&gt;&lt;span class="k"&gt;[user]&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-31"&gt;&lt;code data-line-number="31"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-31" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-31"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;unknown&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="linenos linenodiv"&gt;&lt;a href="https://psss.site/posts/git-tips/#rest_code_0f44cbc4c9f641cb9283d0649d8b394f-32"&gt;&lt;code data-line-number="32"&gt;&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;code&gt;&lt;a id="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-32" name="rest_code_0f44cbc4c9f641cb9283d0649d8b394f-32"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;email&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;unknown@example.com&lt;/span&gt;
&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/section&gt;
&lt;section id="git-1"&gt;
&lt;h3&gt;Переместить ветку git на другой коммит без вытаскивания&lt;/h3&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_dcfd4210285d40a39b9be7d890abbd0f-1" name="rest_code_dcfd4210285d40a39b9be7d890abbd0f-1" href="https://psss.site/posts/git-tips/#rest_code_dcfd4210285d40a39b9be7d890abbd0f-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;branch&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;master&lt;span class="w"&gt; &lt;/span&gt;origin/master
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="git-push-remote"&gt;
&lt;h3&gt;git push во все remote&lt;/h3&gt;
&lt;p&gt;Файл &lt;em&gt;gitpusha.bat&lt;/em&gt; для windows:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code bat"&gt;&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-1" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-1" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-1"&gt;&lt;/a&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="c1"&gt;rem # Если поместить этот файл в одну из директорий, прописанных в системной&lt;/span&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-2" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-2" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-2"&gt;&lt;/a&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="c1"&gt;rem # переменной окружения PATH, то можно прямо из любого репозитория&lt;/span&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-3" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-3" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-3"&gt;&lt;/a&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="c1"&gt;rem # вызывать gitpusha [parameters] что будет аналогично&lt;/span&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-4" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-4" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-4"&gt;&lt;/a&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="c1"&gt;rem # запуску git push &amp;lt;remote-name&amp;gt; [parameters] последовательно для всех&lt;/span&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-5" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-5" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-5"&gt;&lt;/a&gt;&lt;span class="p"&gt;@&lt;/span&gt;&lt;span class="c1"&gt;rem # заданных remote в текущем репозитории&lt;/span&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-6" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-6" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-6"&gt;&lt;/a&gt;
&lt;a id="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-7" name="rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-7" href="https://psss.site/posts/git-tips/#rest_code_e0a6b25a3e634fb7aeb4b35d232633c5-7"&gt;&lt;/a&gt;git remote &lt;span class="p"&gt;|&lt;/span&gt; xargs -l -t git push &lt;span class="nv"&gt;%*&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Скрипт &lt;em&gt;gitpusha&lt;/em&gt; для linux:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_f6310414454e45aca3c64ea1ac83a7a6-1" name="rest_code_f6310414454e45aca3c64ea1ac83a7a6-1" href="https://psss.site/posts/git-tips/#rest_code_f6310414454e45aca3c64ea1ac83a7a6-1"&gt;&lt;/a&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;a id="rest_code_f6310414454e45aca3c64ea1ac83a7a6-2" name="rest_code_f6310414454e45aca3c64ea1ac83a7a6-2" href="https://psss.site/posts/git-tips/#rest_code_f6310414454e45aca3c64ea1ac83a7a6-2"&gt;&lt;/a&gt;
&lt;a id="rest_code_f6310414454e45aca3c64ea1ac83a7a6-3" name="rest_code_f6310414454e45aca3c64ea1ac83a7a6-3" href="https://psss.site/posts/git-tips/#rest_code_f6310414454e45aca3c64ea1ac83a7a6-3"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;remote&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;xargs&lt;span class="w"&gt; &lt;/span&gt;-l&lt;span class="w"&gt; &lt;/span&gt;-t&lt;span class="w"&gt; &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;push&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$@&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;section id="git-2"&gt;
&lt;h4&gt;Количество коммитов в git-репозитории&lt;/h4&gt;
&lt;section id="section-1"&gt;
&lt;h5&gt;Статистика по пользователям&lt;/h5&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_e02b08271bc84d21a4170d926d3dfb2e-1" name="rest_code_e02b08271bc84d21a4170d926d3dfb2e-1" href="https://psss.site/posts/git-tips/#rest_code_e02b08271bc84d21a4170d926d3dfb2e-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;shortlog&lt;span class="w"&gt; &lt;/span&gt;--all&lt;span class="w"&gt; &lt;/span&gt;-s&lt;span class="w"&gt; &lt;/span&gt;-n
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="section-2"&gt;
&lt;h5&gt;Просто общее количество&lt;/h5&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_48ffa218afc7433083644b41a29ff9b5-1" name="rest_code_48ffa218afc7433083644b41a29ff9b5-1" href="https://psss.site/posts/git-tips/#rest_code_48ffa218afc7433083644b41a29ff9b5-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;rev-list&lt;span class="w"&gt; &lt;/span&gt;--count&lt;span class="w"&gt; &lt;/span&gt;--all
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="section-3"&gt;
&lt;h5&gt;За период&lt;/h5&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_bbdea269d4d744d192de1f47eb6dc37d-1" name="rest_code_bbdea269d4d744d192de1f47eb6dc37d-1" href="https://psss.site/posts/git-tips/#rest_code_bbdea269d4d744d192de1f47eb6dc37d-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;rev-list&lt;span class="w"&gt; &lt;/span&gt;--count&lt;span class="w"&gt; &lt;/span&gt;--since&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"Jan 1 2020"&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;--before&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"Dec 31 2020"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;--all
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;/section&gt;
&lt;section id="gitmodules"&gt;
&lt;h4&gt;Инициализация сабмодулей по файлу .gitmodules&lt;/h4&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-1" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-1" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-1"&gt;&lt;/a&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-2" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-2" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-2"&gt;&lt;/a&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-3" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-3" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-3"&gt;&lt;/a&gt;&lt;span class="nb"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-e
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-4" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-4" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-4"&gt;&lt;/a&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-5" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-5" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-5"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;--get-regexp&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'^submodule\..*\.path$'&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-6" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-6" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-6"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nb"&gt;read&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;path_key&lt;span class="w"&gt; &lt;/span&gt;path
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-7" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-7" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-7"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;do&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-8" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-8" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-8"&gt;&lt;/a&gt;&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nv"&gt;url_key&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$path_key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;sed&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'s/\.path/.url/'&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-9" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-9" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-9"&gt;&lt;/a&gt;&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nv"&gt;url&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;-f&lt;span class="w"&gt; &lt;/span&gt;.gitmodules&lt;span class="w"&gt; &lt;/span&gt;--get&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$url_key&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-10" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-10" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-10"&gt;&lt;/a&gt;&lt;span class="w"&gt;        &lt;/span&gt;git&lt;span class="w"&gt; &lt;/span&gt;submodule&lt;span class="w"&gt; &lt;/span&gt;add&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$path&lt;/span&gt;
&lt;a id="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-11" name="rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-11" href="https://psss.site/posts/git-tips/#rest_code_cee3bf8e6ec74d4a9f8440798cc2ab20-11"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="k"&gt;done&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="git-3"&gt;
&lt;h4&gt;Удаление недостижимых объектов из локального репозитория git&lt;/h4&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_ef4e9345c1ac4acb813e93a4daf10510-1" name="rest_code_ef4e9345c1ac4acb813e93a4daf10510-1" href="https://psss.site/posts/git-tips/#rest_code_ef4e9345c1ac4acb813e93a4daf10510-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;reflog&lt;span class="w"&gt; &lt;/span&gt;expire&lt;span class="w"&gt; &lt;/span&gt;--expire-unreachable&lt;span class="o"&gt;=&lt;/span&gt;now&lt;span class="w"&gt; &lt;/span&gt;--all
&lt;a id="rest_code_ef4e9345c1ac4acb813e93a4daf10510-2" name="rest_code_ef4e9345c1ac4acb813e93a4daf10510-2" href="https://psss.site/posts/git-tips/#rest_code_ef4e9345c1ac4acb813e93a4daf10510-2"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;gc&lt;span class="w"&gt; &lt;/span&gt;--prune&lt;span class="o"&gt;=&lt;/span&gt;now
&lt;a id="rest_code_ef4e9345c1ac4acb813e93a4daf10510-3" name="rest_code_ef4e9345c1ac4acb813e93a4daf10510-3" href="https://psss.site/posts/git-tips/#rest_code_ef4e9345c1ac4acb813e93a4daf10510-3"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;fsck&lt;span class="w"&gt; &lt;/span&gt;--unreachable&lt;span class="w"&gt; &lt;/span&gt;--no-reflogs
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="url-git"&gt;
&lt;h4&gt;Замена url для git&lt;/h4&gt;
&lt;p&gt;Если надо массово заменить URL для всех обращений к репозиториям (например, при работе через какой-либо прокси),
то достаточно в глобальный .gitconfig или в config репозитория добавить что-то типа такого:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code ini"&gt;&lt;a id="rest_code_cf44f79a5d4b4755a1853fe72497e901-1" name="rest_code_cf44f79a5d4b4755a1853fe72497e901-1" href="https://psss.site/posts/git-tips/#rest_code_cf44f79a5d4b4755a1853fe72497e901-1"&gt;&lt;/a&gt;&lt;span class="k"&gt;[url "ssh://git@127.0.0.1:2222/"]&lt;/span&gt;
&lt;a id="rest_code_cf44f79a5d4b4755a1853fe72497e901-2" name="rest_code_cf44f79a5d4b4755a1853fe72497e901-2" href="https://psss.site/posts/git-tips/#rest_code_cf44f79a5d4b4755a1853fe72497e901-2"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;insteadOf&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;git@github.com:&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Или, например, чтобы заменить все обращения по https на ssh:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code ini"&gt;&lt;a id="rest_code_c46573162b254f41b5b7cce960e9b81b-1" name="rest_code_c46573162b254f41b5b7cce960e9b81b-1" href="https://psss.site/posts/git-tips/#rest_code_c46573162b254f41b5b7cce960e9b81b-1"&gt;&lt;/a&gt;&lt;span class="k"&gt;[url "git@github.com:"]&lt;/span&gt;
&lt;a id="rest_code_c46573162b254f41b5b7cce960e9b81b-2" name="rest_code_c46573162b254f41b5b7cce960e9b81b-2" href="https://psss.site/posts/git-tips/#rest_code_c46573162b254f41b5b7cce960e9b81b-2"&gt;&lt;/a&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="na"&gt;insteadOf&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;https://github.com/&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Само собой, это можно сделать и командой:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code sh"&gt;&lt;a id="rest_code_2c2ee3bb71944610ba4ab195a0cd12dd-1" name="rest_code_2c2ee3bb71944610ba4ab195a0cd12dd-1" href="https://psss.site/posts/git-tips/#rest_code_2c2ee3bb71944610ba4ab195a0cd12dd-1"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;--global&lt;span class="w"&gt; &lt;/span&gt;url.&lt;span class="s2"&gt;"git@github.com:"&lt;/span&gt;.insteadOf&lt;span class="w"&gt; &lt;/span&gt;https://github.com/
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;section id="email"&gt;
&lt;h4&gt;Установка имени пользователя и email для репозитория&lt;/h4&gt;
&lt;div class="code"&gt;&lt;pre class="code bash"&gt;&lt;a id="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-1" name="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-1" href="https://psss.site/posts/git-tips/#rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-1"&gt;&lt;/a&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;a id="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-2" name="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-2" href="https://psss.site/posts/git-tips/#rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-2"&gt;&lt;/a&gt;
&lt;a id="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-3" name="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-3" href="https://psss.site/posts/git-tips/#rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-3"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;user.name&lt;span class="w"&gt; &lt;/span&gt;myusername
&lt;a id="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-4" name="rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-4" href="https://psss.site/posts/git-tips/#rest_code_2bfe99911b4944cdbbebbcfd1f5b547f-4"&gt;&lt;/a&gt;git&lt;span class="w"&gt; &lt;/span&gt;config&lt;span class="w"&gt; &lt;/span&gt;user.email&lt;span class="w"&gt; &lt;/span&gt;myemail@users.noreply.github.com
&lt;/pre&gt;&lt;/div&gt;
&lt;/section&gt;
&lt;/section&gt;
&lt;/section&gt;</description><category>git</category><guid>https://psss.site/posts/git-tips/</guid><pubDate>Mon, 11 Jan 2021 15:32:00 GMT</pubDate></item></channel></rss>