<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GIT &#8212; ploshadka.net</title>
	<atom:link href="https://ploshadka.net/sites/git/feed/" rel="self" type="application/rss+xml" />
	<link>https://ploshadka.net</link>
	<description>Мир интернет технологий</description>
	<lastBuildDate>Mon, 25 Oct 2021 19:00:27 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1</generator>
	<item>
		<title>GitHub &#8212; Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.</title>
		<link>https://ploshadka.net/github-support-for-password-authentication-was-removed-on-august-13-2021-please-use-a-personal-access-token-instead/</link>
					<comments>https://ploshadka.net/github-support-for-password-authentication-was-removed-on-august-13-2021-please-use-a-personal-access-token-instead/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 26 Oct 2021 08:00:00 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Software Errors]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=7906</guid>

					<description><![CDATA[Токен для авторизации на сайте github.com. Ошибка при работе с гитом, например, по команде git pull: (venv) % git pull Username for &#8216;https://github.com&#8217;: Password for &#8216;https:&#x2f;&#x2f;&#x70;&#x6c;&#111;&#115;had&#x6b;&#x61;&#x40;&#x67;&#x69;&#116;&#104;ub.&#x63;&#x6f;&#x6d;&#8217;: remote: Support for password authentication was removed on August 13, 2021. Please use a...]]></description>
										<content:encoded><![CDATA[<p>Токен для авторизации на сайте github.com. <span id="more-7906"></span></p>
<p>Ошибка при работе с гитом, например, по команде git pull:</p>
<blockquote><p>(venv) % git pull<br />
Username for &#8216;https://github.com&#8217;:<br />
Password for &#8216;https:/&#x2f;&#x70;l&#x6f;&#x73;h&#x61;&#x64;k&#x61;&#x40;g&#x69;&#x74;h&#x75;&#x62;.&#x63;&#x6f;m&#8217;:<br />
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.<br />
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.<br />
fatal: Authentication failed for &#8216;https://github.com/&#8217;</p></blockquote>
<h2>Решение</h2>
<ol>
<li>Зайти на сайт github.com</li>
<li>Войти в профиль</li>
<li>Выбрать setting</li>
<li>Выбрать Developer settings</li>
<li>Выбрать Personal access tokens</li>
<li>Сгенерировать новый токен</li>
</ol>
<p><strong>Использовать этот токен вместо пароля при авторизации.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/github-support-for-password-authentication-was-removed-on-august-13-2021-please-use-a-personal-access-token-instead/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>error: insufficient permission for adding an object to repository database .git/objects</title>
		<link>https://ploshadka.net/error-insufficient-permission-for-adding-an-object-to-repository-database-git-objects/</link>
					<comments>https://ploshadka.net/error-insufficient-permission-for-adding-an-object-to-repository-database-git-objects/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sun, 10 Oct 2021 08:00:00 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Server Errors]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=7859</guid>

					<description><![CDATA[Исправляем ошибку error: insufficient permission for adding an object to repository database .git/objects. Ошибка возникает после команды git pull remote: Enumerating objects: 60, done. remote: Counting objects: 100% (60/60), done. remote: Compressing objects: 100% (7/7), done. error: insufficient permission for...]]></description>
										<content:encoded><![CDATA[<p>Исправляем ошибку error: insufficient permission for adding an object to repository database .git/objects. <span id="more-7859"></span></p>
<p>Ошибка возникает после команды <strong>git pull</strong></p>
<blockquote><p>remote: Enumerating objects: 60, done.<br />
remote: Counting objects: 100% (60/60), done.<br />
remote: Compressing objects: 100% (7/7), done.<br />
error: insufficient permission for adding an object to repository database .git/objects<br />
fatal: failed to write object<br />
fatal: unpack-objects failed</p></blockquote>
<p>Переходим в директорию на которую ругается:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd .git/objects</div></div>
<p>Далее смотрим права:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ls -al</div></div>
<p>Видим, что вместо пользователя <strong>ploshadka</strong> на что-то установились права <strong>root</strong>:</p>
<p><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/7859/rules-600x96.jpg" alt="" width="600" height="96" class="alignnone size-medium wp-image-7861" srcset="https://ploshadka.net/wp-content/uploads/7859/rules-600x96.jpg 600w, https://ploshadka.net/wp-content/uploads/7859/rules-300x48.jpg 300w, https://ploshadka.net/wp-content/uploads/7859/rules.jpg 912w" sizes="(max-width: 600px) 100vw, 600px" /></p>
<p>Правим права на нужные нам (нашего пользователя):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">sudo chown -R ploshadka:ploshadka *</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/error-insufficient-permission-for-adding-an-object-to-repository-database-git-objects/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>warning: Pulling without specifying how to reconcile divergent branches</title>
		<link>https://ploshadka.net/warning-pulling-without-specifying-how-to-reconcile-divergent-branches/</link>
					<comments>https://ploshadka.net/warning-pulling-without-specifying-how-to-reconcile-divergent-branches/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 29 Jun 2021 08:00:00 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=7735</guid>

					<description><![CDATA[С версии гита 2.27.0 при запуске команды git pull появляется уведомление следующего характера: &#171;warning: Pulling without specifying how to reconcile divergent branches is discouraged&#187; warning: Pulling without specifying how to reconcile divergent branches is discouraged. You can squelch this message...]]></description>
										<content:encoded><![CDATA[<p>С версии гита 2.27.0 при запуске команды git pull появляется уведомление следующего характера:<br />
&#171;warning: Pulling without specifying how to reconcile divergent branches is<br />
discouraged&#187; <span id="more-7735"></span></p>
<blockquote><p>warning: Pulling without specifying how to reconcile divergent branches is<br />
discouraged. You can squelch this message by running one of the following<br />
commands sometime before your next pull:</p>
<p>  git config pull.rebase false  # merge (the default strategy)<br />
  git config pull.rebase true   # rebase<br />
  git config pull.ff only       # fast-forward only</p>
<p>You can replace &#171;git config&#187; with &#171;git config &#8212;global&#187; to set a default<br />
preference for all repositories. You can also pass &#8212;rebase, &#8212;no-rebase,<br />
or &#8212;ff-only on the command line to override the configured default per<br />
invocation.</p></blockquote>
<p>Git решил, что теперь пользователь должен знать, что сам может определить для себя метод слияния изменений, если удаленная ветка обновилась. Раньше при подтягивании изменений гит автоматически сливал ветку. </p>
<p>Можно выбрать одну из трех команд. Оставить по умолчанию, значит ввести:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config pull.rebase false</div></div>
<p>Или изменить режим слияния, например, на такой:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config pull.ff only</div></div>
<p>Чтобы убрать уведомления для всех репозиторий следует добавить атрибут global:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config --global</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/warning-pulling-without-specifying-how-to-reconcile-divergent-branches/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Быстрая интеграция GIT</title>
		<link>https://ploshadka.net/bystraja-integracija-git/</link>
					<comments>https://ploshadka.net/bystraja-integracija-git/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 15 May 2020 08:00:00 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Console]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5699</guid>

					<description><![CDATA[Небольшая заметка о том, как быстро перенести свои файлы на в github и затем развернуть на своём сервере. Безопасность Предварительно добавляем в файл .gitignore все файлы, которые могут содержать пароли или отладочную информацию. Например для WordPress: # security .htaccess wp-config.php...]]></description>
										<content:encoded><![CDATA[<p>Небольшая заметка о том, как быстро перенести свои файлы на в github и затем развернуть на своём сервере. <span id="more-5699"></span></p>
<h2>Безопасность</h2>
<p>Предварительно добавляем в файл <strong>.gitignore</strong> все файлы, которые могут содержать пароли или отладочную информацию. </p>
<p>Например для WordPress:</p>
<div class="codecolorer-container bash dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #666666; font-style: italic;"># security</span><br />
.htaccess<br />
wp-config.php</div></div>
<div class="highlight">Строго не рекомендуется хранить в гите файлы вроде <strong>wp-config.php</strong>, в которых указаны настройки базы данных. Их следует отдельно создавать на сервере. Это обезопасит доступ к базе данных, если кто-то получит доступ к репозиторию сайта.</div>
<p>Или пример для проектов на python:</p>
<div class="codecolorer-container bash dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #666666; font-style: italic;"># Private</span><br />
private<span style="color: #000000; font-weight: bold;">/</span><br />
config.py<br />
<br />
<span style="color: #666666; font-style: italic;"># Editors</span><br />
.idea<span style="color: #000000; font-weight: bold;">/</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Mac/OSX</span><br />
.DS_Store<br />
<br />
<span style="color: #666666; font-style: italic;"># Byte-compiled / optimized / DLL files</span><br />
__pycache__<span style="color: #000000; font-weight: bold;">/</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Etc</span><br />
venv<span style="color: #000000; font-weight: bold;">/</span></div></div>
<div class="highlight">Ещё раз: не храните в гите, пускай даже приватном, настройки от базы данных и любые пароли.</div>
<h2>На сайте GitHub.com</h2>
<p>Создаем там новый приватный репозиторий.</p>
<h2>У себя на компе</h2>
<p>Отправляем в созданный репозиторий наш сайт</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git init<br />
git add -A<br />
git commit -m &quot;first commit&quot;<br />
git remote add origin https://github.com/ник/название-репозитория.git<br />
git push -u origin master</div></div>
<h2>На сервере</h2>
<p>Заходим на сервер в директорию куда хотим подтянуть наш сайт из гит (она должна быть пустой), а затем спуливаем к себе:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git clone &quot;&#103;&#x69;&#116;&#x40;&#103;&#x69;&#116;&#x68;&#117;&#x62;&#46;&#x63;&#111;&#x6d;:ник/название-репозитория.git&quot; ./</div></div>
<h3>Безопасность</h3>
<p>Если у вас веб-сервер Apache, то создаем в директории <strong>.git</strong> файл <strong>.htaccess</strong> с содержимым:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Deny from all</div></div>
<p>Вручную на сервер добавляем недостающие файлы с паролями или конектом к базе данных. Они находятся в гитигноре и поэтому никуда не отправятся. </p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/bystraja-integracija-git/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>GIT &#8212; Soft Reset &#8212; Hard Reset</title>
		<link>https://ploshadka.net/git-soft-reset-hard-reset/</link>
					<comments>https://ploshadka.net/git-soft-reset-hard-reset/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 25 Oct 2019 08:40:34 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5311</guid>

					<description><![CDATA[Откат изменений в github с помощью команд GIT. Если что-то пошло не так, то идем по порядку, от наименьшего (возможного) вреда: Откатываем ветку Всегда лучше делать откат с помощью revert merge на самом сайте github.com. Вносим исправляющий коммит Если ветка...]]></description>
										<content:encoded><![CDATA[<p>Откат изменений в github с помощью команд GIT. <span id="more-5311"></span></p>
<p>Если что-то пошло не так, то идем по порядку, от наименьшего (возможного) вреда:</p>
<h2>Откатываем ветку</h2>
<p>Всегда лучше делать откат с помощью <strong>revert merge</strong> на самом сайте github.com.</p>
<h2>Вносим исправляющий коммит</h2>
<p>Если ветка не мерджилась, а изменения были напрямую в мастер, то лучше отправить дополнительный коммит, который исправит положение.</p>
<h2>GIT &#8212; Soft Reset</h2>
<p>Посмотреть референс нужного коммита:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">2sf47sddss9fdsf345sdf33232bb1ae333d8aa</div></div>
<p>И сделать к нему реверт:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git revert -m 1 2sf47sddss9fdsf345sdf33232bb1ae333d8aa</div></div>
<p>Альтернативный вариант. Мягкий сброс на последний коммит:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git reset --soft HEAD~1</div></div>
<h2>Hard Reset</h2>
<p><strong>Hard Reset</strong> &#8212; откатывает последние изменения, которые если не сохранены отдельно, будут потеряны безвозвратно. Самый крайний вариант. Использовать с осторожностью.</p>
<p>Hard Reset может пригодиться когда был <strong>реверт пулл реквеста</strong>, который <strong>снова нужно откатить назад</strong>. Такая безумная цепочка приводит к неприятным последствиям, но такое иногда бывает. В этом случае при откате через <strong>revert (Soft Reset)</strong> изменения не появятся, потому что будут считаться более старой версией. И вот здесь поможет &#171;жесткий&#187; откат.</p>
<p>Сброс на последний коммит:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git reset --hard HEAD~1</div></div>
<p>Альтернативный вариант. Сброс до конкретного референса (это должен быть обычный коммит, не пулл реквест и не мердж):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git reset --hard 2sf47sddss9fdsf345sdf33232bb1ae333d8aa</div></div>
<p>Затем принудительно отправляем на сервер:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git push --force</div></div>
<p>Или так:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git push -f</div></div>
<p>После этого если кто-то работал с этой веткой ему нужно также сбросить:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git checkout название_ветки<br />
git reset --hard origin/название_ветки</div></div>
<h2>Откатываем отдельные файлы</h2>
<p>Смотрим какие файлы были добавлены:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git status</div></div>
<p>Предположим, видим там файл <strong>.gitignore</strong>, удаляем его:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git reset HEAD .gitignore</div></div>
<p>или альтернативный вариант</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git checkout -- .gitignore</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/git-soft-reset-hard-reset/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как автоматически обновлять сайт через github</title>
		<link>https://ploshadka.net/kak-podtjagivat-izmenenija-iz-github/</link>
					<comments>https://ploshadka.net/kak-podtjagivat-izmenenija-iz-github/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 15 Oct 2019 08:00:30 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5259</guid>

					<description><![CDATA[Как установить GIT на свой сайт и подтягивать изменения из репозитория на GitHub. Можно заливать на сервер данные из GitHub с помощью сторонних ресурсов, типа DeployHQ. Но здесь мы не будем рассматривать готовые инструменты, а пойдем путем создания своего деплоя...]]></description>
										<content:encoded><![CDATA[<p>Как установить GIT на свой сайт и подтягивать изменения из репозитория на GitHub. <span id="more-5259"></span></p>
<p>Можно заливать на сервер данные из <strong>GitHub</strong> с помощью сторонних ресурсов, типа <strong>DeployHQ</strong>. Но здесь мы не будем рассматривать готовые инструменты, а пойдем путем создания своего деплоя через команды в bash файле.</p>
<p>Читайте в другой статье, если потребуется обновлять <a href="https://ploshadka.net/autodeploy-to-github/">репозиторий со стороны сервера</a>. </p>
<h2>1. Создаём ssh ключ</h2>
<p>Статья по <a href="https://ploshadka.net/ssh-key/">созданию и настройки ssh ключа</a>.</p>
<p>Иначе будут ошибки при соединении с GitHub сервером:</p>
<blockquote><p>Host key verification failed.<br />
fatal: Could not read from remote repository.</p>
<p>Please make sure you have the correct access rights<br />
and the repository exists.</p></blockquote>
<h2>2. Устанавливаем git на сервер</h2>
<p>Сначала инсталлируем git на свой сервер:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">yum install git</div></div>
<p>Подробнее о том <a href="https://ploshadka.net/kak-podkljuchit-git-na-svojom-udalennom-servere/">как проинсталлировать GIT на сервер</a>.</p>
<h2>3. Создаем новый репозиторий</h2>
<p>Создаём на сайте гитхаб новый репозиторий:<br />
<a href="https://github.com/new">github.com</a></p>
<h2>4. Создаем файл исключений на нашем сервере</h2>
<p>Добавляем на удаленный сервер файл с файлами, которые будем игнорировать</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">.gitignore</div></div>
<h2>5. Клонируем на свой сервер репу</h2>
<p>На сервере в директории сайта запускаем команды по очереди:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git init<br />
git add -A<br />
git commit -m &quot;first commit&quot;<br />
git remote add origin https://github.com/ploshadka/repository.git<br />
git push -u origin master</div></div>
<p>Вводим свой логин и пароль от github.</p>
<h2>6. Клонируем себе</h2>
<p>Через программу <a href="https://ploshadka.net/github-desktop/">GitHub Desktop</a>, <a href="https://ploshadka.net/phpstorm-github/">PhpStorm</a> или консоль, склоннировать репозиторий на локальный компьютер.</p>
<h3>Ошибки</h3>
<p>Если в логах будут ошибки:</p>
<blockquote><p>fatal: could not read Username for &#8216;https://github.com&#8217;: No such device or address</p></blockquote>
<p>Надо зайти в</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&quot;.git/config&quot;</div></div>
<p>И поменять</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">[remote &quot;origin&quot;]<br />
url = https://github.com/ploshadka/some-name.git</div></div>
<p>на</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">[remote &quot;origin&quot;]<br />
url = g&#105;&#x74;&#x40;g&#105;&#x74;&#x68;u&#98;&#x2e;&#x63;o&#109;:ploshadka/some-name.git</div></div>
<h2>7. Клонируем себе</h2>
<p>Создаём на сервере файл bash в котором будет содержимое:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">#!/bin/bash<br />
# Запуск через cron каждую минуту<br />
<br />
# Время<br />
date=$(date '+%d/%m/%Y %H:%M:%S');<br />
<br />
# Переходим в категорию GIT<br />
cd '/home/ваш-путь к сайту'<br />
<br />
git pull<br />
echo &quot;$date&quot;<br />
echo &quot;Была выполнена команда подтягивающая изменения из гит.&quot;</div></div>
<h3>Ошибки</h3>
<p>Если данные переносятся на сервер (например, восстанавливается backup), то в первый раз обязательно надо подтянуть изменения из GIT вручную. Иначе скрипт не отработает. Будет сообщать об ошибке доступа.</p>
<p>Запускаем:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git pull</div></div>
<p>И соглашаемся на добавление ssh ключа GitHub в разрешенные для связи с ним.</p>
<h2>8. Настроить Cron</h2>
<p>Настроить <a href="https://ploshadka.net/cron/">cron на запуск этого скрипта</a>, например, каждую минуту.</p>
<p>Для нашего скрипта это будет выглядеть так:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">*/1 * * * * root sh /какая-то директория/scripts/git-pull &amp;gt;/какая-то директория/scripts/git-pull.log 2&amp;gt;&amp;amp;1</div></div>
<p>В той же директории при каждой команде будет записываться лог из последнего действия. Если что-то не работает, там всегда можно будет это обнаружить.</p>
<h2>9. Безопасность</h2>
<p>Git хранит в служебной директории .git полную копию всего репозитория. Обязательно закройте директорию .git в настройках HTTP сервера, чтобы никто не смог получить доступ к исходным кодам вашего сайта в публичном доступе без авторизации.</p>
<p>Для этого создайте в папке .git файл .htaccess и добавьте туда директиву:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Deny from all</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/kak-podtjagivat-izmenenija-iz-github/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress не обновляется</title>
		<link>https://ploshadka.net/wordpress-ne-obnovljaetsja/</link>
					<comments>https://ploshadka.net/wordpress-ne-obnovljaetsja/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 09 Sep 2019 09:59:52 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Wordpress Errors]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5185</guid>

					<description><![CDATA[Конфликт GIT и WordPress. Если установить GIT сервере для сайта на WordPress, то можно столкнуться с рядом сложностей. WordPress автоматически определяет, есть ли на сервере система контроля версия (.git, .hg, .svn). И если обнаруживает, то перестаёт выполнять автоматические обновления. Это...]]></description>
										<content:encoded><![CDATA[<p>Конфликт GIT и WordPress. Если установить GIT сервере для сайта на WordPress, то можно столкнуться с рядом сложностей. <span id="more-5185"></span></p>
<p>WordPress автоматически определяет, есть ли на сервере система контроля версия (.git, .hg, .svn). И если обнаруживает, то перестаёт выполнять автоматические обновления.</p>
<p>Это может привести к тому, что админка начнет дико тормозить. Особенно на страницах обновления WordPress и плагинов. С одной стороны WordPress блокирует обновление, а с другой посылает запросы, на которые не приходят ответы.</p>
<p>Есть хук для принудительного включения обновления.</p>
<div class="codecolorer-container php dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #000000; font-weight: bold;">function</span> forceAutoUpdate<span style="color: #009900;">&#40;</span> <span style="color: #000088;">$checkout</span><span style="color: #339933;">,</span> <span style="color: #000088;">$context</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
add_filter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'automatic_updates_is_vcs_checkout'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'true_force_auto_update'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">10</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<p>Мне он не помог, но может кому-то поможет. </p>
<p>Как временное решение, можно заблокировать проверку обновлений:</p>
<div class="codecolorer-container php dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #666666; font-style: italic;">// Отключение проверки обновлений при заходе в админку</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'admin_init'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'_maybe_update_core'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'admin_init'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'_maybe_update_plugins'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'admin_init'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'_maybe_update_themes'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Отключение проверки обновлений на странице плагинов</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'load-plugins.php'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_update_plugins'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Отключение проверки на странице тем</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'load-themes.php'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_update_themes'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Отключение проверки обновлений на странице обновления плагинов</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'load-update-core.php'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_update_plugins'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
remove_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'load-update-core.php'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_update_themes'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<h2>Ошибки</h2>
<p>Все нижеперечисленные ошибки могут иметь одинаковую причину &#8212; установленную систему GIT.</p>
<blockquote><p>Background updates are not working as expected</p></blockquote>
<blockquote><p>Update Failed: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 500 Internal Server Error Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator at i&#x6e;&#x66;o&#64;&#x70;lo&#x73;&#x68;a&#100;&#x6b;a.&#x6e;&#x65;t to inform them of the time this error occurred, and the actions you performed just before this error. More information about this error may be available in the server error log.</p></blockquote>
<blockquote><p>Error while sending QUERY packet. PID=15978</p></blockquote>
<blockquote><p>Internal Server Error<br />
The server encountered an internal error or misconfiguration and was unable to complete your request.<br />
Please contact the server administrator at info@ to inform them of the time this error occurred, and the actions you performed just before this error.<br />
More information about this error may be available in the server error log.</p></blockquote>
<blockquote><p>Произошла непредвиденная ошибка. Возможно, что-то не так с сайтом WordPress.org или с настройками вашего сервера. Если проблема не решится, обратитесь на форумы поддержки. (Не удалось установить защищённое соединение с WordPress.org. Пожалуйста, свяжитесь с администратором сервера.)</p></blockquote>
<p>Есть и другие причины <a href="https://ploshadka.net/wordpress-ne-mozhet-obnovitsja/">почему WordPress не может обновиться</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/wordpress-ne-obnovljaetsja/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>remote: error: Could not read</title>
		<link>https://ploshadka.net/remote-error-could-not-read/</link>
					<comments>https://ploshadka.net/remote-error-could-not-read/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 20 Apr 2019 08:00:20 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5049</guid>

					<description><![CDATA[Ошибки в гите &#171;remote: error: Could not read&#187; или &#171;remote: fatal: Failed to traverse parents of commit&#187;. Невозможность клонировать или спулить репозиторий. Ошибки remote: error: Could not read 2d011387ccba6d09ede6697424a5939dfb616 COMP:www User$ git pull remote: error: Could not read 2d011387ccba6d09ede6697424a5939dfb616 remote:...]]></description>
										<content:encoded><![CDATA[<p>Ошибки в гите &#171;remote: error: Could not read&#187; или &#171;remote: fatal: Failed to traverse parents of commit&#187;. <span id="more-5049"></span></p>
<p>Невозможность клонировать или спулить репозиторий.</p>
<h2>Ошибки</h2>
<blockquote><p>remote: error: Could not read 2d011387ccba6d09ede6697424a5939dfb616</p></blockquote>
<blockquote><p>COMP:www User$ git pull<br />
remote: error: Could not read 2d011387ccba6d09ede6697424a5939dfb616<br />
remote: fatal: Failed to traverse parents of commit 2d011387ccba6d09ede6697424a5939dfb616<br />
fatal: protocol error: bad pack header<br />
COMP:www User$ </p></blockquote>
<h2>Решение</h2>
<p>Обратитесь в поддержку Github. Вполне возможно, эта ошибка на их стороне и самостоятельно её никак не решить.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/remote-error-could-not-read/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как обновить GIT ветку до мастера (удалив все не нужное)</title>
		<link>https://ploshadka.net/git-branch-sync-with-master/</link>
					<comments>https://ploshadka.net/git-branch-sync-with-master/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 05 Mar 2019 10:08:53 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4803</guid>

					<description><![CDATA[Инструкция как привести любую ветку к оригинальной мастера. Если вы сделаете команду git pull origin master, то подтянутся изменения из мастера, но при этом старые изменения в текущей рабочей ветке останутся. В результате она не будет равняться мастеру. Как привести...]]></description>
										<content:encoded><![CDATA[<p>Инструкция как привести любую ветку к оригинальной мастера. <span id="more-4803"></span></p>
<p>Если вы сделаете команду <strong>git pull origin master</strong>, то подтянутся изменения из мастера, но при этом старые изменения в текущей рабочей ветке останутся. В результате она не будет равняться мастеру.</p>
<h2>Как привести git ветку к оригиналу</h2>
<p>Сначала надо переключиться на нужную ветку, скажем она будет называться <strong>staging</strong></p>
<p>Вводим по очереди команды:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git fetch origin <br />
git reset --hard origin/master<br />
git push --force</div></div>
<p>Теперь ваша локальная и удаленная ветка полностью соответсвует ветке <strong>master</strong>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/git-branch-sync-with-master/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как клонировать ветку в PhpStorm из GitHub</title>
		<link>https://ploshadka.net/github-phpstorm-clone-branch/</link>
					<comments>https://ploshadka.net/github-phpstorm-clone-branch/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 01 Mar 2019 08:00:23 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Mac OS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Github Desktop]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4793</guid>

					<description><![CDATA[Клонируем репозиторий на свой компьютер с помощью Github Desktop и подключаем его в PhpStorm. Сначала клонируем репозиторий в программе Github Desktop. Заходим через контекстное меню: File - &#62; Clone Repository... Там выбираем из уже ранее подключенных репозиториев: Затем создаём новый...]]></description>
										<content:encoded><![CDATA[<p>Клонируем репозиторий на свой компьютер с помощью <strong>Github Desktop</strong> и подключаем его в <strong>PhpStorm</strong>. <span id="more-4793"></span></p>
<p>Сначала клонируем репозиторий в программе <strong>Github Desktop</strong>. </p>
<p>Заходим через контекстное меню:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">File - &gt; Clone Repository...</div></div>
<p>Там выбираем из уже ранее подключенных репозиториев:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4793/github-desktop1.jpg" rel="lightbox-0"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4793/github-desktop1-371x400.jpg" alt="" width="371" height="400" class="aligncenter size-medium wp-image-4796" srcset="https://ploshadka.net/wp-content/uploads/4793/github-desktop1-371x400.jpg 371w, https://ploshadka.net/wp-content/uploads/4793/github-desktop1-742x800.jpg 742w, https://ploshadka.net/wp-content/uploads/4793/github-desktop1-186x200.jpg 186w, https://ploshadka.net/wp-content/uploads/4793/github-desktop1.jpg 902w" sizes="(max-width: 371px) 100vw, 371px" /></a></p>
<p>Затем <a href="https://ploshadka.net/phpstorm-new-project/">создаём новый проект в шторме</a> и выбираем папку, куда был клонирован репозиторий. PhpStorm автоматически увидит подключенный git репозиторий и можно сразу наблюдать изменения в ветке:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4793/phpStorm.jpg" rel="lightbox-1"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4793/phpStorm-600x158.jpg" alt="" width="600" height="158" class="aligncenter size-medium wp-image-4795" srcset="https://ploshadka.net/wp-content/uploads/4793/phpStorm-600x158.jpg 600w, https://ploshadka.net/wp-content/uploads/4793/phpStorm-1200x316.jpg 1200w, https://ploshadka.net/wp-content/uploads/4793/phpStorm-300x79.jpg 300w, https://ploshadka.net/wp-content/uploads/4793/phpStorm.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/github-phpstorm-clone-branch/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Bash скрипт сравнения директорий и загрузки на github</title>
		<link>https://ploshadka.net/bash-deploy-on-github/</link>
					<comments>https://ploshadka.net/bash-deploy-on-github/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 25 Feb 2019 08:01:32 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[GIT]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=5012</guid>

					<description><![CDATA[bash скрипт сравнивающий файлы в двух разных директориях и при наличии отличий, заливающий на сайт github. Скрипт можно использовать вместе с этой инструкцией. #!/bin/bash dir_watch='/home/admin/site/wp-content/themes/ploshadka.net/folder'; dir_upload='/home/admin/site2/wp-content/themes/ploshadka.net/folder'; # Время date=$&#40;date '+%d/%m/%Y %H:%M:%S'&#41;; # Проверяем наличие изменений DIFF=$&#40;diff $dir_watch $dir_upload&#41; if &#91;...]]></description>
										<content:encoded><![CDATA[<p>bash скрипт сравнивающий файлы в двух разных директориях и при наличии отличий, заливающий на сайт github. <span id="more-5012"></span></p>
<p>Скрипт можно использовать вместе с <a href="https://ploshadka.net/autodeploy-to-github/">этой инструкцией</a>.</p>
<div class="codecolorer-container bash dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span><br />
<br />
<span style="color: #007800;">dir_watch</span>=<span style="color: #ff0000;">'/home/admin/site/wp-content/themes/ploshadka.net/folder'</span>;<br />
<span style="color: #007800;">dir_upload</span>=<span style="color: #ff0000;">'/home/admin/site2/wp-content/themes/ploshadka.net/folder'</span>;<br />
<br />
<span style="color: #666666; font-style: italic;"># Время</span><br />
<span style="color: #007800;">date</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">date</span> <span style="color: #ff0000;">'+%d/%m/%Y %H:%M:%S'</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>;<br />
<br />
<span style="color: #666666; font-style: italic;"># Проверяем наличие изменений</span><br />
<span style="color: #007800;">DIFF</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">diff</span> <span style="color: #007800;">$dir_watch</span> <span style="color: #007800;">$dir_upload</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$DIFF</span>&quot;</span> <span style="color: #000000; font-weight: bold;">!</span>= <span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span><br />
<span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$date</span>&quot;</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Измененные файлы найдены:&quot;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">diff</span> <span style="color: #660033;">-q</span> <span style="color: #007800;">$dir_watch</span> <span style="color: #007800;">$dir_upload</span><span style="color: #000000; font-weight: bold;">/</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Найдём все старые файлы и удалим их</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">find</span> <span style="color: #007800;">$dir_upload</span> <span style="color: #660033;">-type</span> f <span style="color: #660033;">-name</span> <span style="color: #ff0000;">&quot;*backup*&quot;</span> <span style="color: #660033;">-print0</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">xargs</span> <span style="color: #660033;">-0</span> <span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-rf</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Переносим файлы (если они имеют дату более новую) в директорию отправки в GIT</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #660033;">-u</span> <span style="color: #007800;">$dir_watch</span><span style="color: #000000; font-weight: bold;">/*</span> <span style="color: #007800;">$dir_upload</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Переходим в категорию GIT</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #ff0000;">'/home/admin/site2/'</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Отправляем изменения в ветку site2</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">git checkout</span> site2<br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">git add</span> <span style="color: #660033;">-A</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">git commit</span> <span style="color: #660033;">-m</span> <span style="color: #ff0000;">&quot;update site2&quot;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">git push</span><br />
<span style="color: #000000; font-weight: bold;">else</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$date</span>&quot;</span><br />
&nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Изменений в файлах нет. В коммите нет неоходимости.&quot;</span><br />
<span style="color: #000000; font-weight: bold;">fi</span></div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/bash-deploy-on-github/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Автодеплой со своего сервера на github с помощью bash скрипта</title>
		<link>https://ploshadka.net/autodeploy-to-github/</link>
					<comments>https://ploshadka.net/autodeploy-to-github/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 25 Feb 2019 08:00:56 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[GIT]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4998</guid>

					<description><![CDATA[Настройка автоматической заливки на GIT файлов с сервера. Часть мануала взята из статьи настройки GIT между своим сервером и компьютером. Устанавливаем git на сервер Для начала устанавливаем нужный репозиторий с сайта github.com к себе на сервер. Узнаём установлен ли GIT,...]]></description>
										<content:encoded><![CDATA[<p>Настройка автоматической заливки на GIT файлов с сервера. <span id="more-4998"></span></p>
<p>Часть мануала взята из статьи <a href="https://ploshadka.net/kak-podkljuchit-git-na-svojom-udalennom-servere/">настройки GIT между своим сервером и компьютером</a>.</p>
<h2>Устанавливаем git на сервер</h2>
<p>Для начала устанавливаем нужный репозиторий с сайта github.com к себе на сервер.</p>
<p>Узнаём установлен ли GIT, проверив его версию:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git --version</div></div>
<p>Заходим в директорию, куда должен скачаться гит репозиторий:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd www</div></div>
<p>Устанавливаем удалённый репозиторий:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git clone g&#105;&#x74;&#x40;g&#105;&#x74;&#x68;u&#98;&#x2e;&#x63;om:user-name/ploshadka-net.git</div></div>
<p>Если возникла ошибка:</p>
<div class="highlight">
Cloning into &#8216;ploshadka.net&#8217;&#8230;<br />
&#x67;it&#x40;&#103;i&#x74;&#104;u&#x62;&#46;c&#x6f;&#109;: Permission denied (publickey).<br />
fatal: Could not read from remote repository.Please make sure you have the correct access rights<br />
and the repository exists.
</div>
<p>Это означает, что нет SSH ключа для общения между сайтом github и вашим сервером. Для исправления <a href="https://ploshadka.net/ssh-key/">создаём ключ и привязываем его</a>.</p>
<p>Заново пробуем склонировать репозиторий</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git clone &#103;i&#116;&#64;&#103;i&#x74;h&#x75;b&#x2e;c&#x6f;m:user-name/ploshadka-net.git</div></div>
<p>Успешный процесс:</p>
<div class="highlight">Cloning into &#8216;name-of-repository&#8217;&#8230;<br />
remote: Enumerating objects: 407, done.<br />
remote: Counting objects: 100% (407/407), done.<br />
remote: Compressing objects: 100% (263/263), done.<br />
remote: Total 281904 (delta 255), reused 222 (delta 143), pack-reused 281497<br />
Receiving objects: 100% (281904/281904), 373.69 MiB | 1.82 MiB/s, done.<br />
Resolving deltas: 100% (208060/208060), done.<br />
Checking out files: 100% (20185/20185), done.</div>
<h2>Создаём локальную ветку от master</h2>
<p><a href="https://ploshadka.net/create-branch-git/">Создаём локальную ветку</a> через которую будет работать наш скрипт.</p>
<p>После отправки первого коммита, возникнет сообщение:</p>
<blockquote><p>*** Please tell me who you are.</p>
<p>Run</p>
<p>  git config &#8212;global user.email &#171;y&#111;&#x75;&#x40;ex&#x61;&#x6d;pl&#101;&#x2e;&#x63;o&#109;&#187;<br />
  git config &#8212;global user.name &#171;Your Name&#187;</p>
<p>to set your account&#8217;s default identity.<br />
Omit &#8212;global to set the identity only in this repository.</p></blockquote>
<p>Отправляем</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config --global user.name &quot;Dev Server&quot;</div></div>
<p>И любой свой эмейл</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config --global user.email &quot;test&#64;&#103;&#109;&#x61;&#x69;&#x6c;&#x2e;&#x63;&#x6f;&#x6d;&quot;</div></div>
<h3>Проблема с правами доступа</h3>
<p>Ошибка:</p>
<blockquote><p>error: insufficient permission for adding an object to repository database .git/objects</p></blockquote>
<p>Или такая:</p>
<blockquote><p>git pull<br />
remote: Enumerating objects: 27, done.<br />
remote: Counting objects: 100% (27/27), done.<br />
remote: Compressing objects: 100% (3/3), done.<br />
remote: Total 27 (delta 24), reused 27 (delta 24), pack-reused 0<br />
error: insufficient permission for adding an object to repository database .git/objects<br />
fatal: failed to write object<br />
fatal: unpack-objects failed</p></blockquote>
<p>Если возникают подобные ошибки, значит они связаны с правами доступа. Заходим в папку <strong>git/objects</strong> и смотрим права доступа:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd .git/objects<br />
ls -al</div></div>
<p>Назначаем на всю папку права нужного нам пользователя.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">sudo chown -R dev:dev .git</div></div>
<h3>Скрипт автодеплоя на github</h3>
<p>Для автодеплоя на github нам понадобится bash файл с обычными командами GIT.</p>
<p>Например, если нужно отправить какие-то файлы, попадающие на сервер:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">#!/bin/bash<br />
# Переходим в категорию GIT<br />
cd '/home/dev/www'<br />
<br />
# Отправляем изменения в ветку dev<br />
git checkout dev<br />
git add -A<br />
git commit -m &quot;update dev&quot;<br />
git push</div></div>
<p>Или если нужно получить эти файлы на сервер:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">#!/bin/bash<br />
# Переходим в категорию GIT<br />
cd '/home/dev/www'<br />
<br />
# Загружаем данные из ветки dev<br />
git checkout dev<br />
git pull</div></div>
<p>Или использовать <a href="https://ploshadka.net/bash-deploy-on-github/">более сложный скрипт</a>.</p>
<p>На сам файл ставим права на выполнение, иначе он не будет запускаться из cron:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">chmod +x bash.sh</div></div>
<h3>Заносим задание в cron</h3>
<p>Описание процесса <a href="https://ploshadka.net/cron/">настройки задачи для cron</a>.</p>
<p>Запускаем cron, например, каждые 5 минут.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">*/5 * * * * dev sh /home/dev/bash-file</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/autodeploy-to-github/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как удалить ветку в GITHUB</title>
		<link>https://ploshadka.net/github-remove-branch/</link>
					<comments>https://ploshadka.net/github-remove-branch/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 20 Feb 2019 08:00:05 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4787</guid>

					<description><![CDATA[Краткая инструкция по удалению ветки в гитхабе. Удаление на сайте github Заходим в свой репозиторий. Находим там вкладку branches: Нажимаем на неё и оказываемся на следующей странице: Справа от веток находим иконку корзины. Это полностью позволяет удалить ветку. Удаление через...]]></description>
										<content:encoded><![CDATA[<p>Краткая инструкция по удалению ветки в гитхабе.  <span id="more-4787"></span></p>
<h2>Удаление на сайте github</h2>
<p>Заходим в свой репозиторий. Находим там вкладку <strong>branches</strong>:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4787/branches.jpg" rel="lightbox-0"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4787/branches-600x89.jpg" alt="" width="600" height="89" class="aligncenter size-medium wp-image-6533" srcset="https://ploshadka.net/wp-content/uploads/4787/branches-600x89.jpg 600w, https://ploshadka.net/wp-content/uploads/4787/branches-1200x178.jpg 1200w, https://ploshadka.net/wp-content/uploads/4787/branches-1536x227.jpg 1536w, https://ploshadka.net/wp-content/uploads/4787/branches-300x44.jpg 300w, https://ploshadka.net/wp-content/uploads/4787/branches.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Нажимаем на неё и оказываемся на следующей странице:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4787/github-remove-branch.jpg" rel="lightbox-1"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4787/github-remove-branch-532x400.jpg" alt="" width="532" height="400" class="aligncenter size-medium wp-image-4988" srcset="https://ploshadka.net/wp-content/uploads/4787/github-remove-branch-532x400.jpg 532w, https://ploshadka.net/wp-content/uploads/4787/github-remove-branch-1063x800.jpg 1063w, https://ploshadka.net/wp-content/uploads/4787/github-remove-branch-266x200.jpg 266w, https://ploshadka.net/wp-content/uploads/4787/github-remove-branch.jpg 1861w" sizes="(max-width: 532px) 100vw, 532px" /></a></p>
<p>Справа от веток находим иконку корзины. Это полностью позволяет удалить ветку.</p>
<h2>Удаление через консоль</h2>
<p>Удаляет локальную ветку, если уже сделан её пуш и мердж:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git branch -d branch_name</div></div>
<p>Принудительно (force) удаляет локальную ветку, несмотря ни на что:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git branch -D branch_name</div></div>
<p>Теперь удалим такую же ветку из самого репозитория:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git push origin --delete stage</div></div>
<p>Удаление всех локальных веток, если не существует удаленных (были удалены):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git fetch --all --prune<br />
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -d</div></div>
<h2>Удаление через PhpStorm</h2>
<p>В PhpStorm переходим на ветку master:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4787/phpstorm1.jpg" rel="lightbox-2"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4787/phpstorm1-600x345.jpg" alt="" width="600" height="345" class="aligncenter size-medium wp-image-4788" srcset="https://ploshadka.net/wp-content/uploads/4787/phpstorm1-600x345.jpg 600w, https://ploshadka.net/wp-content/uploads/4787/phpstorm1-300x172.jpg 300w, https://ploshadka.net/wp-content/uploads/4787/phpstorm1.jpg 828w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Отсюда удаляем ненужную ветку из локальной среды:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4787/phpstorm2.jpg" rel="lightbox-3"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4787/phpstorm2-600x347.jpg" alt="" width="600" height="347" class="aligncenter size-medium wp-image-4789" srcset="https://ploshadka.net/wp-content/uploads/4787/phpstorm2-600x347.jpg 600w, https://ploshadka.net/wp-content/uploads/4787/phpstorm2-300x174.jpg 300w, https://ploshadka.net/wp-content/uploads/4787/phpstorm2.jpg 816w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/github-remove-branch/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Как сгенерировать SSH ключ</title>
		<link>https://ploshadka.net/ssh-key/</link>
					<comments>https://ploshadka.net/ssh-key/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 28 Jan 2019 14:10:29 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4820</guid>

					<description><![CDATA[Создаём публичный SSH ключ. Ошибки при отсутствии SSH ключа При отсутсвии публичного ключа для доступа к GIT репозиторию возникнет ошибка: gi&#116;&#x40;&#x67;ith&#117;&#x62;&#x2e;com: Permission denied (publickey). fatal: Could not read from remote repository. А если это связано со скриптом, который запускается при...]]></description>
										<content:encoded><![CDATA[<p>Создаём публичный SSH ключ. <span id="more-4820"></span></p>
<h2>Ошибки при отсутствии SSH ключа</h2>
<p>При отсутсвии публичного ключа для доступа к GIT репозиторию возникнет ошибка:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&#x67;&#x69;t&#64;&#x67;&#x69;&#116;hu&#x62;&#x2e;&#99;om: Permission denied (publickey).<br />
fatal: Could not read from remote repository.</div></div>
<p>А если это связано со скриптом, который запускается при инициализации GIT репозитория и в котором указаны дальнейшие инструкции, то могут посыпаться и другие ошибки:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ERROR: <br />
&nbsp; &nbsp; &nbsp; &nbsp; Can't find a suitable configuration file in this directory or any<br />
&nbsp; &nbsp; &nbsp; &nbsp; parent. Are you in the right directory?</div></div>
<div class="highlight">На русском:<br />
Не удается найти подходящий файл конфигурации в этом каталоге или любом родителе. Вы в правильном каталоге?</div>
<p>Т.е. из-за того что гит репозиторий не подтянулся, а скрипт идет дальше по указаниям, которые нужно сделать для скаченных папок, хотя ничего не скачено, вот и показываются соответствующие ошибки.</p>
<p>Для исправления ошибки <strong>Permission denied (publickey)</strong> необходимо занести публичный <strong>ssh ключ</strong>, который сгенерирован для компьютера, с которого осуществляется доступ на сайт <a href="https://github.com/" rel="noopener noreferrer" target="_blank">github.com</a>.</p>
<h2>I. Создание ключа ssh</h2>
<p>Открываем терминал и переходим в папку с ключами:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd ~/.ssh</div></div>
<p>Смотрим какие файлы там существуют:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ls</div></div>
<p>Обычно что-то вроде:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">id_rsa<br />
id_rsa.pub<br />
known_hosts</div></div>
<p>где файлы:<br />
<strong>id_rsa</strong> – содержит секретный ключ;<br />
<strong>id_rsa.pub</strong> &#8212; публичный ключ.</p>
<p>Если файлов id_rsa и id_rsa.pub нет или чтобы их пересоздать, вводим команду:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ssh-keygen</div></div>
<p>или</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ssh-keygen -t rsa</div></div>
<p>На вопрос перезапустить:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Overwrite (y/n)?</div></div>
<p>Отвечаем утвердительно.</p>
<h2>II. Смотрим свой публичный ключ</h2>
<p>Вводим команду:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cat ~/.ssh/id_rsa.pub</div></div>
<p>Внутри будет содержаться сгенерированный ключ, что-то вроде этого:</p>
<div class="highlight">ssh-rsa AAtVB4puoWb3TQmkRDAtVhbLt3nWACq5r1Z/wMDcmh/8D0+MSSAsGLsW/ZOztIKn4uv6ojl5jBeM6UMoAmT23G5xVWHpW4YoeoNikAAB3B4puoWb3TQmkAABRDAV5sCnhbLt3nWACq5r1Z/wMDcmh/8D0+MSSAsGLsW/ZOztIKn4uv6ojl5jBeM6UMoAmT23G5xVWHpW4YoeoNikV5sCnyc2EAAIzaC1dwjKIB user@ploshadka-net-computer</div>
<p>Этот ключ копируем и вставляем на страницу:<br />
<a href="https://github.com/settings/keys" rel="noopener noreferrer" target="_blank">https://github.com/settings/keys</a></p>
<p>Там создаём ключ, нажимая на <strong>New SSH key</strong></p>
<p><a href="https://ploshadka.net/wp-content/uploads/4820/ssh-key.jpg" rel="lightbox-0"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4820/ssh-key-600x340.jpg" alt="" width="600" height="340" class="aligncenter size-medium wp-image-4822" srcset="https://ploshadka.net/wp-content/uploads/4820/ssh-key-600x340.jpg 600w, https://ploshadka.net/wp-content/uploads/4820/ssh-key-1200x681.jpg 1200w, https://ploshadka.net/wp-content/uploads/4820/ssh-key-300x170.jpg 300w, https://ploshadka.net/wp-content/uploads/4820/ssh-key.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Вводим название ключа, например, название операционной системы (к примеру – <strong>Mac OS</strong>). А в поле Key, вставляем содержимое которое было скопировано из терминала.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2.jpg" rel="lightbox-1"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2-600x336.jpg" alt="" width="600" height="336" class="aligncenter size-medium wp-image-4823" srcset="https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2-600x336.jpg 600w, https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2-1200x673.jpg 1200w, https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2-300x168.jpg 300w, https://ploshadka.net/wp-content/uploads/4820/ssh-keys-2.jpg 1538w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Теперь не должно быть проблем при соединении этого компьютера с сервисами сайта github.com</p>
<h2>Важно</h2>
<p>Если мы настраиваем <a href="https://ploshadka.net/autodeploy-to-github/">автодеплой на GIT</a>, то первый раз команду <strong>git pull</strong> надо запустить в ручном режиме! Это необходимо, чтобы добавить аутентификацию гита на свой сервер.</p>
<blockquote><p>git pull<br />
The authenticity of host &#8216;github.com (140.82.118.3)&#8217; can&#8217;t be established.<br />
RSA key fingerprint is SHA256:.<br />
RSA key fingerprint is MD5:.<br />
Are you sure you want to continue connecting (yes/no)? yes</p></blockquote>
<p>Подтверждаем. Теперь скрипты будут работать в автоматическом режиме.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/ssh-key/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Создание нового репозитория из GitHub</title>
		<link>https://ploshadka.net/github-download-repository/</link>
					<comments>https://ploshadka.net/github-download-repository/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 10 Dec 2018 08:00:57 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Mac OS]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Github Desktop]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4391</guid>

					<description><![CDATA[Клонируем репозиторий из GitHub к себе на компьютер. Через приложение GitHub Desktop Через консоль Или с помощью команды в Терминале: git clone &#34;&#x67;&#x69;&#116;&#64;gi&#x74;&#x68;&#x75;&#98;.c&#x6f;&#x6d;:юзер/название-его-репозитория.git&#34; ./куда-сохраняем Если проект уже существует. Его можно пересобрать (инициализировать). Для этого в консоли переходим в папку проекта:...]]></description>
										<content:encoded><![CDATA[<p>Клонируем репозиторий из GitHub к себе на компьютер. <span id="more-4391"></span></p>
<h2>Через приложение <strong>GitHub Desktop</strong></h2>
<p><a href="https://ploshadka.net/wp-content/uploads/4391/Github.jpg" rel="lightbox-0"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4391/Github-600x174.jpg" alt="" width="600" height="174" class="aligncenter size-medium wp-image-4392" srcset="https://ploshadka.net/wp-content/uploads/4391/Github-600x174.jpg 600w, https://ploshadka.net/wp-content/uploads/4391/Github-1200x348.jpg 1200w, https://ploshadka.net/wp-content/uploads/4391/Github-300x87.jpg 300w, https://ploshadka.net/wp-content/uploads/4391/Github.jpg 1222w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<h2>Через консоль</h2>
<p>Или с помощью команды в <a href="https://ploshadka.net/tag/terminal/">Терминале</a>:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git clone &quot;&#x67;&#x69;&#x74;&#x40;&#x67;&#105;&#116;hub.c&#x6f;&#x6d;:юзер/название-его-репозитория.git&quot; ./куда-сохраняем</div></div>
<p>Если проект уже существует. Его можно пересобрать (инициализировать). Для этого в консоли переходим в папку проекта:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd /sites/ploshadka.net</div></div>
<p>А затем инициализируем его:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">sudo bash ./init.sh</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/github-download-repository/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Создание ветки в репозитории GITHUB</title>
		<link>https://ploshadka.net/create-branch-git/</link>
					<comments>https://ploshadka.net/create-branch-git/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 10 Oct 2018 08:00:46 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Mac OS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4135</guid>

					<description><![CDATA[Примеры создания веток в github через терминал или PhpStorm. Создание ветки через консоль Создаём новую ветку и сразу переключаемся на неё git checkout -b feat/123/task-name Отправляем эту ветку в удаленный репозиторий (на сайт github) git push --set-upstream origin feat/123/task-name Создание...]]></description>
										<content:encoded><![CDATA[<p>Примеры создания веток в github через терминал или PhpStorm. <span id="more-4135"></span> </p>
<h2>Создание ветки через консоль</h2>
<p>Создаём новую ветку и сразу переключаемся на неё</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git checkout -b feat/123/task-name</div></div>
<p>Отправляем эту ветку в удаленный репозиторий (на сайт github)</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git push --set-upstream origin feat/123/task-name</div></div>
<h2>Создание локальной ветки через PhpStorm</h2>
<p>Для создания локальной ветки репозитория GitHub через Шторм, сначала надо <a href="https://ploshadka.net/phpstorm-github/">подключить Git к PhpStorm</a>.</p>
<p>После того как <strong>GitHub</strong> был подключен к <strong>PhpStorm</strong>, можно сделать локальную ветку основного рабочего репозитория. </p>
<p>Нажимаем на надпись <strong>Git</strong> в правом нижнем углу программы PhpStorm.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4135/local-remote-branch.jpg" rel="lightbox-0"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4135/local-remote-branch-362x400.jpg" alt="" width="362" height="400" class="aligncenter size-medium wp-image-4154" srcset="https://ploshadka.net/wp-content/uploads/4135/local-remote-branch-362x400.jpg 362w, https://ploshadka.net/wp-content/uploads/4135/local-remote-branch-724x800.jpg 724w, https://ploshadka.net/wp-content/uploads/4135/local-remote-branch-181x200.jpg 181w, https://ploshadka.net/wp-content/uploads/4135/local-remote-branch.jpg 818w" sizes="(max-width: 362px) 100vw, 362px" /></a> </p>
<p>Затем выбираем оригинальную ветку или любую нужную и в контекстном меню этой ветки выбираем <strong>Checkout as new local branch</strong>.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4135/new-branch1.jpg" rel="lightbox-1"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4135/new-branch1-570x400.jpg" alt="" width="570" height="400" class="aligncenter size-medium wp-image-4137" srcset="https://ploshadka.net/wp-content/uploads/4135/new-branch1-570x400.jpg 570w, https://ploshadka.net/wp-content/uploads/4135/new-branch1-1140x800.jpg 1140w, https://ploshadka.net/wp-content/uploads/4135/new-branch1-285x200.jpg 285w, https://ploshadka.net/wp-content/uploads/4135/new-branch1.jpg 1230w" sizes="(max-width: 570px) 100vw, 570px" /></a></p>
<h2>Пушим ветку на сайт github.com</h2>
<p>После создания локальной ветки в PhpStorm, её нужно запушить в удаленный репозиторий.</p>
<p>При использовании графического (не через консоль) обновления, появится такое окошко. Если не вдаваться в подробности, то указанное по умолчанию наиболее пригодный вариант:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4135/new-branch2.jpg" rel="lightbox-2"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4135/new-branch2-600x304.jpg" alt="" width="600" height="304" class="aligncenter size-medium wp-image-4138" srcset="https://ploshadka.net/wp-content/uploads/4135/new-branch2-600x304.jpg 600w, https://ploshadka.net/wp-content/uploads/4135/new-branch2-300x152.jpg 300w, https://ploshadka.net/wp-content/uploads/4135/new-branch2.jpg 1006w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Когда обновление завершится в нижнем правом уголке PhpStorm появится уведомление:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/4135/up-to-date.jpg" rel="lightbox-3"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4135/up-to-date-600x143.jpg" alt="" width="600" height="143" class="aligncenter size-medium wp-image-4152" srcset="https://ploshadka.net/wp-content/uploads/4135/up-to-date-600x143.jpg 600w, https://ploshadka.net/wp-content/uploads/4135/up-to-date-300x71.jpg 300w, https://ploshadka.net/wp-content/uploads/4135/up-to-date.jpg 770w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/create-branch-git/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>GIT описание ошибок</title>
		<link>https://ploshadka.net/git-opisanie-oshibok/</link>
					<comments>https://ploshadka.net/git-opisanie-oshibok/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 03 Oct 2018 12:17:19 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4604</guid>

					<description><![CDATA[В статье описываются типичные ошибки или уведомления, которые возникают в GIT при работе через консоль. Эта статья будет дополняться по мере того, как я буду встречать новые заголовки, для которых сочту, что нужны дополнительные пояснения. Your branch is ahead of...]]></description>
										<content:encoded><![CDATA[<p>В статье описываются типичные ошибки или уведомления, которые возникают в GIT при работе через консоль. Эта статья будет дополняться по мере того, как я буду встречать новые заголовки, для которых сочту, что нужны дополнительные пояснения. <span id="more-4604"></span></p>
<h2>Your branch is ahead of &#8216;origin/любая_ветка&#8217; by 12 commits.</h2>
<p>В гите локально хранится копия репозитория. И сначала изменения происходят в ней. Для этого используется команда <strong>commit</strong>. </p>
<p>Сообщение выше говорит о том, что изменения в локальной копии опережают изменение я удаленной на кол-во раз. И эти изменения не отправлены в удаленный репозиторий.</p>
<p>Для передачи этих изменений в удаленный репозиторий используется команда <strong>push</strong>. После чего все сделанные изменения будут доступны удаленно, в том числе и для других пользователей.</p>
<h2>hint: Waiting for your editor to close the file&#8230; error: There was a problem with the editor &#8216;/usr/bin/vim&#8217;.</h2>
<p>Ошибка появляется в <a href="https://ploshadka.net/phpstorm-vs-sublime-text/">PhpStorm</a> после команды <strong>git merge</strong>.</p>
<p>Если никакие команды не позволяют исправить редактор <strong>VIM</strong>, то можно заменить его на другой. Скажем на редактор <a href="https://ploshadka.net/nano/">nano</a>.</p>
<p>Установка на <strong>Mac OS</strong> через <a href="https://ploshadka.net/homebrew-install/">Homebrew</a></p>
<p>После установки <strong>Homebrew</strong> ввести команду:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">brew install nano</div></div>
<p>А затем поменять в <a href="https://ploshadka.net/phpstorm-vs-sublime-text/">PhpStorm</a> редактор на nano:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git config --global core.editor “nano”</div></div>
<p>Если редактор не установлен, то при смене будет ошибка:</p>
<blockquote><p>error: unable to start editor &#8216;“nano”&#8217;</p></blockquote>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/git-opisanie-oshibok/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>GitHub и GitHub Desktop &#8212; как делать commit</title>
		<link>https://ploshadka.net/github-desktop/</link>
					<comments>https://ploshadka.net/github-desktop/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 15 Aug 2018 08:00:45 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[GitHub]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3956</guid>

					<description><![CDATA[Как обновить новыми данными Git репозиторий. Другими словами как правильно коммитить (commit), иначе – вносить изменения и правки на гит. Разберем на примере программы GitHub Desktop. GitHub Desktop Вы сделали какое-то изменение в файлах, это сразу отразится в программе. В...]]></description>
										<content:encoded><![CDATA[<p>Как обновить новыми данными Git репозиторий. Другими словами как правильно коммитить (commit), иначе – вносить изменения и правки на гит. Разберем на примере программы <strong>GitHub Desktop</strong>. <span id="more-3956"></span></p>
<h2>GitHub Desktop</h2>
<p>Вы сделали какое-то изменение в файлах, это сразу отразится в программе. В левой части будут показаны, какие файлы изменены в сравнении с тем, что находится в репозитории. Отмечаем галочкой нужные файлы. </p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub1.jpg" rel="lightbox-0"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub1-446x400.jpg" alt="" width="446" height="400" class="aligncenter size-medium wp-image-3958" srcset="https://ploshadka.net/wp-content/uploads/3956/GitHub1-446x400.jpg 446w, https://ploshadka.net/wp-content/uploads/3956/GitHub1-891x800.jpg 891w, https://ploshadka.net/wp-content/uploads/3956/GitHub1-223x200.jpg 223w, https://ploshadka.net/wp-content/uploads/3956/GitHub1.jpg 1560w" sizes="(max-width: 446px) 100vw, 446px" /></a></p>
<p>Затем внизу в поле <strong>Summary</strong> заносим короткое описание изменений. При желании можно описать более подробно в окошке <strong>Description</strong>. Далее нажать &#171;<strong>Commit to</strong> название ветки&#187;.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub4.jpg" rel="lightbox-1"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub4-600x388.jpg" alt="" width="600" height="388" class="aligncenter size-medium wp-image-3967" srcset="https://ploshadka.net/wp-content/uploads/3956/GitHub4-600x388.jpg 600w, https://ploshadka.net/wp-content/uploads/3956/GitHub4-300x194.jpg 300w, https://ploshadka.net/wp-content/uploads/3956/GitHub4.jpg 618w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Последним действием в программе нажимаем на <strong>Fetch Origin</strong> вверху рабочей области, чтобы отправить изменения на сервер.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub3.jpg" rel="lightbox-2"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub3.jpg" alt="" width="220" height="40" class="aligncenter size-full wp-image-3964" /></a></p>
<h2>github.com</h2>
<p>После отправки заходим на Github в ту ветку с которой вы работаете (куда отправили изменения). Там появится новая кнопка: <strong>Compare &#038; pull request</strong>. Нажимаем на неё.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub2.jpg" rel="lightbox-3"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub2-600x237.jpg" alt="" width="600" height="237" class="aligncenter size-medium wp-image-3959" srcset="https://ploshadka.net/wp-content/uploads/3956/GitHub2-600x237.jpg 600w, https://ploshadka.net/wp-content/uploads/3956/GitHub2-1200x474.jpg 1200w, https://ploshadka.net/wp-content/uploads/3956/GitHub2-300x119.jpg 300w, https://ploshadka.net/wp-content/uploads/3956/GitHub2.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Следующим действием, уже в новом окне. Там где указан <strong>base: master</strong> выбираем нужную ветку либо оставляем <strong>master</strong>. А с правой стороны compare уже указана наша рабочая ветка. </p>
<p>Если в комментариях ничего нет или нужно добавить, здесь же пишем. Затем нажимаем <strong>Create pull request</strong>.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub5.jpg" rel="lightbox-4"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub5-600x392.jpg" alt="" width="600" height="392" class="aligncenter size-medium wp-image-3969" srcset="https://ploshadka.net/wp-content/uploads/3956/GitHub5-600x392.jpg 600w, https://ploshadka.net/wp-content/uploads/3956/GitHub5-1200x784.jpg 1200w, https://ploshadka.net/wp-content/uploads/3956/GitHub5-300x196.jpg 300w, https://ploshadka.net/wp-content/uploads/3956/GitHub5.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Если никаких конфликтов нет, то будет предложено совместить ветки. Это делается с помощью кнопки <strong>Merge pull request</strong>. Однако, если вы работаете в большой компании и не являетесь руководителем проекта, функцию совмещения ветки следует оставить тому, кто проект знает лучше. Пусть он проверит код за вами и затем сам сделает совмещение проектов.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3956/GitHub6.jpg" rel="lightbox-5"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3956/GitHub6-531x400.jpg" alt="" width="531" height="400" class="aligncenter size-medium wp-image-3970" srcset="https://ploshadka.net/wp-content/uploads/3956/GitHub6-531x400.jpg 531w, https://ploshadka.net/wp-content/uploads/3956/GitHub6-1061x800.jpg 1061w, https://ploshadka.net/wp-content/uploads/3956/GitHub6-265x200.jpg 265w, https://ploshadka.net/wp-content/uploads/3956/GitHub6.jpg 1857w" sizes="(max-width: 531px) 100vw, 531px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/github-desktop/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PhpStorm &#8212; как подключиться к GitHub</title>
		<link>https://ploshadka.net/phpstorm-github/</link>
					<comments>https://ploshadka.net/phpstorm-github/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 10 Aug 2018 08:00:20 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[Mac OS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[PhpStorm]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3945</guid>

					<description><![CDATA[Описание процесса подключения репозитория GitHub для PhpStorm-а. Это позволяет напрямую из программы работать с Git-ом, а также иметь удобный контроль версий. Подключение к GitHub Заходим в пункт меню: VCS -&#62; Checkout from Version Control -&#62; GitHub Добавляем ссылку на Git...]]></description>
										<content:encoded><![CDATA[<p>Описание процесса подключения репозитория <strong>GitHub</strong> для <strong>PhpStorm</strong>-а. Это позволяет напрямую из программы работать с Git-ом, а также иметь удобный контроль версий. <span id="more-3945"></span></p>
<h2>Подключение к GitHub</h2>
<p>Заходим в пункт меню:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">VCS -&gt; Checkout from Version Control -&gt; GitHub</div></div>
<p><a href="https://ploshadka.net/wp-content/uploads/3945/GitHub1.jpg" rel="lightbox-0"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3945/GitHub1-600x384.jpg" alt="" width="600" height="384" class="aligncenter size-medium wp-image-3947" srcset="https://ploshadka.net/wp-content/uploads/3945/GitHub1-600x384.jpg 600w, https://ploshadka.net/wp-content/uploads/3945/GitHub1-300x192.jpg 300w, https://ploshadka.net/wp-content/uploads/3945/GitHub1.jpg 826w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Добавляем ссылку на Git репозиторий, выбираем папку, где будут храниться наши файлы и называем папку в которой непосредственно будет находиться новый проект для PhpStorm. Дальше нажимаем Clone.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3945/GitHub2.jpg" rel="lightbox-1"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3945/GitHub2-600x178.jpg" alt="" width="600" height="178" class="aligncenter size-medium wp-image-3948" /></a></p>
<p>После этих процедур подключится GitHub репозиторий и можно будет обновлять файлы сразу из программы. </p>
<p>А возможно потребуется ещё инициализировать GIT. </p>
<h2>Инициализация GitHub для PhpStorm</h2>
<p>Заходим в настройки PhpStorm во вкладку <strong>Version Control</strong>:</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3945/version-control.jpg" rel="lightbox-2"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3945/version-control-600x386.jpg" alt="" width="600" height="386" class="aligncenter size-medium wp-image-4129" srcset="https://ploshadka.net/wp-content/uploads/3945/version-control-600x386.jpg 600w, https://ploshadka.net/wp-content/uploads/3945/version-control-1200x773.jpg 1200w, https://ploshadka.net/wp-content/uploads/3945/version-control-300x193.jpg 300w, https://ploshadka.net/wp-content/uploads/3945/version-control.jpg 1920w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>Здесь на кнопку плюсик. Выбираем директорию с содержимым GIT репозитория. Репозиторий GitHub может быть одной и той же папкой, что и <a href="https://ploshadka.net/phpstorm-new-project/">текущий проект PhpStorm</a>. А в пункте <strong>VSC</strong> выбираем <strong>Git</strong>.</p>
<p><a href="https://ploshadka.net/wp-content/uploads/3945/vcs-git.jpg" rel="lightbox-3"><img wpfc-lazyload-disable="true" decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/3945/vcs-git-600x181.jpg" alt="" width="600" height="181" class="aligncenter size-medium wp-image-4130" srcset="https://ploshadka.net/wp-content/uploads/3945/vcs-git-600x181.jpg 600w, https://ploshadka.net/wp-content/uploads/3945/vcs-git-1200x361.jpg 1200w, https://ploshadka.net/wp-content/uploads/3945/vcs-git-300x90.jpg 300w, https://ploshadka.net/wp-content/uploads/3945/vcs-git.jpg 1242w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/phpstorm-github/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Как подключить Git на своём удаленном сервере</title>
		<link>https://ploshadka.net/kak-podkljuchit-git-na-svojom-udalennom-servere/</link>
					<comments>https://ploshadka.net/kak-podkljuchit-git-na-svojom-udalennom-servere/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 09 May 2018 18:00:06 +0000</pubDate>
				<category><![CDATA[GIT]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4259</guid>

					<description><![CDATA[В примере ниже создаём отслеживание изменений на сервере с помощью GIT. Это никак не связано с сайтом GITHUB. Можно использовать контроль версии без этого и похожих сайтов. Всё необходимое будет на локальной машине и на удаленном сервере. На удаленном сервере...]]></description>
										<content:encoded><![CDATA[<p>В примере ниже создаём отслеживание изменений на сервере с помощью GIT. Это никак не связано с сайтом GITHUB. Можно использовать контроль версии без этого и похожих сайтов. Всё необходимое будет на локальной машине и на удаленном сервере. <span id="more-4259"></span></p>
<h2>На удаленном сервере</h2>
<p>Устанавливаем GIT на свой удаленный сервер. Устанавливаем через <a href="https://ploshadka.net/ssh/">Терминал (консоль)</a>.</p>
<p>В <a href="https://ploshadka.net/os/centos/">CentOS</a> это делается так:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">yum install git</div></div>
<p><a href="https://ploshadka.net/wp-content/uploads/4259/git-install.jpg" rel="lightbox-0"><img decoding="async" loading="lazy" src="https://ploshadka.net/wp-content/uploads/4259/git-install-345x400.jpg" alt="" width="345" height="400" class="aligncenter size-medium wp-image-4260" srcset="https://ploshadka.net/wp-content/uploads/4259/git-install-345x400.jpg 345w, https://ploshadka.net/wp-content/uploads/4259/git-install-690x800.jpg 690w, https://ploshadka.net/wp-content/uploads/4259/git-install-172x200.jpg 172w, https://ploshadka.net/wp-content/uploads/4259/git-install.jpg 1196w" sizes="(max-width: 345px) 100vw, 345px" /></a></p>
<p>Команда для проверки версии:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git --version</div></div>
<p>Теперь создаём директорию, в которой будут отслеживаться изменения и храниться настройки GIT. Пути приведены для панели управления сайтом <a href="https://ploshadka.net/vesta-install/">VESTA</a>. У вас могут быть другие пути. Сайт соответственно меняем на свой.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd /home/admin/web/</div></div>
<p>Создаём новую директорию, например:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">mkdir git.ploshadka.net</div></div>
<p>Переходим в неё:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd git.ploshadka.net</div></div>
<p>Вводим команду инициализации GIT для этой директории:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git init --bare</div></div>
<p>После этой команды, в папке test появится много новых файлов. Заходим в папку <strong>hooks</strong>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd hooks</div></div>
<p>Создаём в этой же папке новый файл:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">nano post-receive</div></div>
<p>Это bash (shell) скрипт. </p>
<p>Записываем следующее содержимое в него:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">#!/bin/sh<br />
git --work-tree=/home/admin/web/ploshadka.net/public_html/test --git-dir=/home/admin/web/ploshadka.net/git checkout -f</div></div>
<p><strong>work-tree</strong> &#8212; это то место куда будут записывать измененные файлы на сервер<br />
<strong>git-dir</strong> &#8212; это место, где мы инициализировали GIT (настройки и файлы слежения)</p>
<p>Сохраняем файл и выходим из него.</p>
<p>Добавляем этому файлу необходимые права доступа:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">chmod +x post-receive</div></div>
<h2>На локальном компьютере</h2>
<p>Переходим в папку, где находится наш сайт. Например:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">cd sites/ploshadka.net</div></div>
<p>Точно также, как на сервере, инициализируем эту папку, похожей командой:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git init</div></div>
<p>Затем добавляем адрес папки сервера, в которой мы инициализировали GIT этапом ранее:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git remote add live ssh://root@123.123.111.1/home/admin/web/git.ploshadka.net/</div></div>
<p>Теперь всё готово для работы.</p>
<p>Изменяем какой-нибудь файл, на локальной машине, для примера. А затем:</p>
<p>Добавляем изменения в GIT:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git add .</div></div>
<p>или</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git commit -m &quot;new edits&quot;</div></div>
<p>С помощью этой команды можно проверить статус файлов (проверка, не обязательна)</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git status</div></div>
<p>Теперь отправляем изменения на сервер:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git push live master</div></div>
<p>(Вводим пароль. Можно без ввода пароля, если создать ssh ключ).</p>
<h3>Исправление ошибок</h3>
<p>Если возникает ошибка:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">remote: error: cannot run hooks/post-receive: No such file or directory</div></div>
<p>Значит в файле post-receive указан неверный формат адреса к скрипту. Ошибка может находится в этом месте:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">#!/bin/sh</div></div>
<h2>Откат изменений</h2>
<p>Допустим мы внесли неправильные изменения и хотим откатить назад. Тогда вводим команду:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git log</div></div>
<p>После которой видны хеши измененных этапов. Выбираем нужный. К примеру, мы хотим откатить до предыдущего изменения. Тогда указываем нужный нам хеш:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">git revert 5e6dsf4674beb3dfc54f057e52150c4c76</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/kak-podkljuchit-git-na-svojom-udalennom-servere/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
	</channel>
</rss>
