Знакомство с git и github: руководство для начинающих

git push — вносим изменения в удаленный репозиторий

После проведения работы в экспериментальной ветке, слияния с основной, необходимо
обновить удаленный репозиторий (удаленную ветку). Для этого используется команда
git push.

Отправляет свои изменения в удаленную ветку, созданную при клонировании по
умолчанию:

Отправляет изменения из ветки master в ветку experimental удаленного репозитория:

В удаленном репозитории origin удаляет ветку experimental:

Отправляет в удаленную ветку master репозитория origin (синоним репозитория по
умолчанию) ветки локальной ветки master:

Отправляет метки в удаленную ветку master репозитория origin:

Изменяет указатель для удаленной ветке master репозитория origin (master будет
такой же как и develop):

Добавляет ветку test в удаленный репозиторий origin, указывающую на коммит ветки
develop:

9 ответов

Лучший ответ

Есть кнопка . Если вы хотите делать редкие покупки, на сайте есть много решений. Например, здесь.

8

C1sc0
31 Авг 2019 в 10:17

Вы также можете просто клонировать репо, после того, как клонирование будет выполнено, просто выберите папку или подлость, которую вы хотите. Чтобы клонировать:

Затем перейдите в клонированный каталог DIR и найдите файл или каталог, который вы хотите скопировать.

-5

Stephen Rauch
2 Окт 2017 в 04:52

Вы можете загрузить всю папку в разделе «Клонирование» или «Параметры загрузки» (URL-адрес Git или «Загрузить Zip»).

  1. Есть кнопка Download Zip

  2. Используя команду, вы можете загрузить всю папку на свой компьютер, но для этого вам понадобится git на вашем компьютере. Вы можете найти URL-адрес Git uner

    git clone https://github.com/url

-2

Community
20 Июн 2020 в 09:12

Зависимость: и .

Например:

1

Kalpesh Kundanani
30 Авг 2019 в 05:17

Вы должны загрузить весь проект либо с помощью кнопки «Клонировать на рабочий стол», которая будет использовать собственную программу github, либо с помощью кнопки «Загрузить как zip».

А затем найдите эту папку в загруженном проекте.

Paran0a
11 Окт 2015 в 15:17

Как загрузить определенную папку из репозитория GitHub

Вот правильное решение в соответствии с этим :

  • Создать каталог

  • Настроить репозиторий git

  • Настройте свой git-repo для загрузки только определенных каталогов

  • Установите папку, которую вы хотите загрузить, например вы хотите загрузить только каталог документов из

    Например. если вы хотите загрузить каталог документов только из главного репозитория , то ваша команда — .

  • Загрузите репо как обычно

2

abu_bua
24 Июн 2020 в 14:41

Воспользуйтесь онлайн-инструментом GitZip. Он позволяет загружать подкаталог репозитория github в виде zip-файла. Команды git не нужны!

12

gdrt
11 Авг 2019 в 09:09

Вы можете использовать , чтобы получить ссылку на архив и , чтобы получить указанную папку.

Командная строка:

Например, если вы хотите загрузить examples / with-apollo / папку из zeit / next.js, вы можете ввести следующее:

17

chuyik
7 Авг 2017 в 02:36

Вы можете загрузить файл / папку с github

Просто используйте

Например

(да, это svn. по-видимому, в 2016 году вам все еще понадобится svn, чтобы просто загрузить некоторые файлы github)

35

Anona112
5 Дек 2016 в 23:22

GitHub поток

Допустим, у вас есть проект, и у вас может быть много разных идей и возможностей в любой момент времени. Некоторые функции могут быть готовы к работе, а некоторые нет. Может быть, вы работаете с другими людьми, которые все делают свое дело. Вот где начинается ветвление!

Филиал — это отдельное пространство, где вы можете опробовать новые идеи. Если вы что-то измените в ветке, это не повлияет на основную ветку, пока вы этого не захотите. Это означает, что вы можете делать с этой веткой все, что захотите, пока не решите, что пришло время объединить ее.

Единственная ветвь, которая собирается навсегда изменить вещи, является основной ветвью. Если вы не хотите, чтобы ваши изменения были развернуты немедленно, внесите их в отдельную ветку и объедините их с основной веткой, когда будете готовы.

Если вы работаете с другими и хотите вносить изменения самостоятельно, или если вы работаете самостоятельно и хотите вносить изменения, не затрагивая основную ветку, вам нужна отдельная ветка. Вы можете создать новую ветку в любое время.

Также довольно просто создать ветку с именем «new_feature» в вашем терминале и переключиться на нее с помощью

git checkout -b new_feature

Как только вы создадите ветку, вы можете внести изменения в эту ветку. Это позволяет легко увидеть, что вы изменили и почему вы это изменили. Каждый раз, когда вы фиксируете свои изменения, вы добавляете сообщение, которое вы можете использовать для описания того, что вы сделали.

Давайте поговорим об оформлении заказа!

git checkout

позволяет проверить хранилище, в котором вы в данный момент не находитесь. Вы можете проверить мастер ветку с

git checkout master

или посмотрите на ветку «new_feature» с

git checkout new_feature

Когда вы закончили работу с веткой, вы можете объединить все свои изменения обратно, чтобы они были видны всем.

git merge new_feature

возьмет все изменения, которые вы внесли в ветку «new_feature», и добавит их в мастер.

Чтобы создать восходящую ветвь, чтобы вы могли отправить свои изменения и установить удаленную ветвь как восходящую, вы добавите свою функцию, запустив

git push --set-upstream origin new_feature

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

Устанавливаем SSH-ключи

Git установлен, профиль на GitHub создан. Осталось добавить SSH-ключ и можно приступать к работе с проектом.

Что такое SSH-ключ и зачем он нужен?

Чтобы работать со своего компьютера с GitHub, иметь доступ к проектам, хранящимся на сервисе, выполнять команды в консоли без постоянного подтверждения пароля, нужно пройти авторизацию у сервера. В этом помогают SSH-ключи.

Каждый SSH-ключ содержит пару: открытый (публичный) и закрытый (приватный) ключ. Открытый ключ отправляется на сервер, его можно не прятать от всех и не переживать, что кто-то его увидит и украдёт. Он бесполезен без своей пары — закрытого ключа. А вот закрытый ключ — секретная часть. Доступ к нему должен быть только у вас.

Вы отправляете какую-то информацию на сервер, где хранится ваш публичный ключ, сервер понимает, что вы это вы, то есть идентифицирует именно вас, и даёт вам какой-то ответ. И только вы можете расшифровать этот ответ, потому что только у вас есть подходящий закрытый ключ. Получается что-то вроде связки логин-пароль только намного безопасней. Ваш пароль кто-то может узнать или подобрать, а чтобы получить ваш приватный SSH-ключ, злоумышленнику придётся взломать ваш компьютер.

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

Сначала проверим, есть ли уже на компьютере ключ. По умолчанию SSH-ключи хранятся в каталоге , поэтому нужно проверить содержимое этого каталога.

  1. Открываем консоль.
  2. Вводим , чтобы перейти в нужный каталог.

    Переходим в нужную директорию.

  3. Используем , чтобы увидеть список всех файлов в каталоге.

    Открываем список файлов в директории.

    Ищем пару файлов с названиями вида и . Обычно имя — , , или . Файл с расширением — ваш публичный ключ, а второй — ваш приватный, секретный ключ.
    Если таких файлов или даже каталога у вас нет, вы можете их сгенерировать. Для этого делаем следующее.

    • Открываем консоль и вводим команду:
      ssh-keygen -t rsa -b 4096 -C "your_mail@example.com"

      Указываем тот адрес электронной почты, который вводили при регистрации на GitHub.

      Генерируем ключ.

    • Далее нужно указать расположение файла для сохранения ключа. Если вы не введёте путь до файла и просто нажмёте Enter, ключ сохранится в файле, указанном в скобках.
    • Теперь нужно установить пароль к вашему ключу и дважды ввести его. Если вы не хотите вводить пароль каждый раз, когда используете ключ, пропустите этот шаг, нажав «Enter», и ничего не вводите.

      Указываем расположение ключа и вводим пароль.

  4. Добавляем ключ в (сгенерированный или уже существующий). Проверяем доступность ключа командой и добавляем с помощью , где указываем верный путь до файла с ключом и его имя.

    Добавляем ключ в shh-agent. Несколько важных примечаний:

    • Если вы захотите переименовать ключ, могут возникнуть проблемы. Их можно решить, добавив в связь ключа с доменом.
    • Если у вас Windows и вы пользуетесь программой Cmder, возможны проблемы с командой . Может появиться такое сообщение об ошибке:
      «eval не является внутренней или внешней командой, исполняемой программой или пакетным файлом».

      В Сmder для запуска можно использовать команду .

      Если проблема осталась, рекомендуем работать в Git Bash.

    • Если у вас macOS Sierra версии 10.12.2 и выше, нужно изменить ваш файл, чтобы автоматически загрузить ключи в и хранить пароли.
      Host *
       AddKeysToAgent yes
       UseKeychain yes
       IdentityFile ~/.ssh/id_rsa

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

    • Если у вас Linux, может понадобится переназначить для ~/.ssh права доступа командой
  5. После того как создан ключ, его нужно добавить на GitHub. Для этого копируем его содержимое с помощью одной из следующих команд:
    • Если вы на Windows
    • Для пользователей macOS
    • На Linux используйте , чтобы установить необходимый для копирования пакет , а затем введите

    Можно пойти другим путём, открыть файл прямо в папке и просто скопировать содержимое оттуда.

  6. Переходим на страницу для работы с ключами в вашем профиле на GitHub.

    Страница с настройками ключей в вашем профиле.

    Нажимаем кнопку New SSH key (новый SSH-ключ). Вводим имя ключа (можно придумать абсолютно любое) в поле Title (название), а в Key (ключ) вставляем сам ключ из буфера обмена. Теперь нажимаем Add SSH key (добавить SSH-ключ).

    Добавляем в свой профиль SSH-ключ.

    Если всё сделано верно, в списке появится новый ключ.

    Успешно добавленный ключ.

Теперь, наконец-то, мы можем начать работу с самим проектом.

Знакомьтесь, pass

Перевод

Я много лет искал подходящую мне хранилку паролей и недавно наткнулся на Pass на HackerNews. Идея хранить пароли в git-репозитории может выглядеть странно, но в целом это неплохая идея, потому что:

  • Я держу гит-репозиторий локально у себя на компе
  • Все пароли защищены GPG шифрованием, поэтому даже при получении SSH-доступа к моему компьютеру утечка не повлияет на безопасность

Я использую -c чтобы копировать/вставлять пароли. Есть расширение для браузера, но копипейст лично мне удобнее. Проблемы синхронизации с телефоном и всеми linux-дейвайсами тоже не стоит (потому что это всего лишь git).
Делюсь с вами переводом приветственной странички Pass.
Управление паролями должно быть простым и следовать философии Unix. Используя pass, каждый Ваш пароль находится внутри зашифрованного файла gpg, имя которого совпадает с именем ресурса или веб сайта к которому данный пароль привязан. Эти зашифрованные файлы могут быть организованы в удобные иерархии папок, скопированы с носителя на носитель и, в общем, обработаны с помощью любых утилит управления файлами командной строки.
С pass управлять отдельными файлами паролей становится крайне просто. Все пароли хранятся в ~ / .password-store, а pass предоставляет несколько удобных команд для добавления, редактирования, генерации и получения паролей. Это очень короткий и простой Shell скрипт. Он способен временно помещать пароли в буфер обмена и отслеживать изменения паролей с помощью git.

Используйте консольный и графический интерфейсы git одновременно

Многие продвинутые редакторы, в частности, Ваш любимый мой любимый VS Code, предоставляют как удобный доступ к консоли, так и приятный графический интерфейс для систем контроля версий, что позволяет в равной мере использовать плюсы обоих вариантов.

Удобства графического интерфейса очевидны невооружённым взглядом:

  • Вы наглядно видите изменения в файле сразу в своём любимом редакторе.
  • Вы можете контролировать стейджинг (добавление файлов для коммита) текущих изменений практически в реальном времени, не обращаясь к .
  • Вы получаете быстрый доступ к истории файла.
  • … и многое другое, что зависит от конкретных редакторов и/или используемых плагинов.

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

  • В первую очередь, это поддержка всех возможных команд и опций, поскольку в первую очередь консольная команда, а любой GUI — это посредник между ним и Вами.
  • Подсказки по этим «всем возможным командам и опциям».
  • Возможность применить эти команды и опции в любой комбинации. В графических интерфейсах часто «выведен наружу» только базовый набор команд, а всё что сложнее — спрятано где-то внутри. Консоль предоставляет одинаково неудобный интерфейс для всех команд.
  • Подробный лог выполнения команд, описание ошибок и способы как их исправить. Банальный вывод неудачного при наличии входящих изменений в отредактированных файлах — сразу можно увидеть в каком файле есть несовместимые изменения и заняться мержем веток вручную:

Соответственно, когда у вас есть доступ и к консоли, и к боковой панели, можете успешно использовать лучшее из обоих миров так, как будет удобно именно Вам.

Применительно к VS Code с установленным плагином GitLens хочу поделиться парочкой специфичных лайфхаков.

  • Привяжите хоткей к команде — эта команда позволяет быстро сравнить текущий файл с его версией в любой ветке.
  • Если хотите пометить для себя место в каком-либо файле, чтобы иметь возможность быстро к нему вернуться в процессе работы над текущей веткой — просто добавьте в нужное место пустую строчку. Таким образом файл всегда будет под рукой в боковой панели. Да, для закладок существует богатый ассортимент плагинов, но обычно списки закладок быстро захламляются и в них бывает сложно ориентироваться, когда смешиваются закладки из разных веток.

Создание репозитория

Создать репозиторий можно двумя способами:

  • на сайте;
  • через GitHub Desktop.

У нас есть выбор между Public и Private. Разница между ними в том, что публичные репозиторий видно в поиске, в вашем профиле, любой может просмотреть весь код и предложить свои исправления (pull request, пулл-реквест, ПР, пи-ар). Приватный репозиторий доступен только определённым пользователям, хозяин репозитория сам выбирает, кто видит репозиторий и кто может делать коммиты. На обычном (бесплатном) аккаунте возможность создавать приватные репозитории обычно ограничена несколькими.

Далее у нас есть возможность инициализировать репозиторий с файлом README. В нем может быть отображена информация о репозитории, о его использовании, установке файлов и т.д. Описание происходит в формате Markdown. Также за этой галочкой скрывается команда init, которая превращает пустую папку в Git-проект.

Также стоит упомянуть про файл .gitignore и LICENSE. Файл .gitignore нужен для того, чтобы в репозиторий не попадали разные временные файлы или сборки, например, при сборке проекта в Visual Studio создается множество временных бинарных файлов, которые при каждом изменении исходного кода программы, будут другими, поэтому для репозитория (хранилища исходного кода) это по факту мусор. Поэтому в этом файле прописано, что определенные папки и файлы не будут учитываться при подготовке коммитов и, следовательно, загрузке в удалённый репозиторий. При создании репозитория можно выбрать уже заранее созданные файлы под язык программирования или среду разработки. Также его можно прописать или дополнить и указать какие файлы включить или убрать из репозитория. Файл LICENSE указывает на то, по какой лицензии распространяется код. Про каждую лицензию можно почитать отдельно и в основном они отличаются тем, что можно делать с кодом: продавать, распространять, изменять и т.д. При создании нашего репозитория можно либо выбрать эти файлы, либо оставить их пустыми.

Популярные лицензии (в сторону уменьшения количества ограничений):

  • GNU GPL;
  • MIT;
  • Unlicense;
  • WTFPL (do whatever you want public license).

Текст лицензии понадобится скопировать в файл LICENSE.

Далее нажимаем на зеленую кнопку Create repository. Вы увидите список файлов в своем репозитории (пока это только автоматически сгенерированный файл README с описанием проекта) и содержание README, если он есть, а также файлы .gitignore и LICENSE, если они создавались. Ссылка на репозиторий будет выглядеть так: https://github.com/username/your_repo_name.git .

Регистрация на GitHub

Что такое GitHub?

GitHub — веб-сервис, который основан на системе Git. Это такая социальная сеть для разработчиков, которая помогает удобно вести коллективную разработку IT-проектов. Здесь можно публиковать и редактировать свой код, комментировать чужие наработки, следить за новостями других пользователей. Именно в GitHub работаем мы, команда Академии, и студенты интенсивов.

Чтобы начать работу с GitHub, нужно зарегистрироваться на сайте, если вы ещё этого не сделали. За дело.

  1. Переходим на сайт GitHub.

    Cтартовая страница GitHub.

  2. Для начала регистрации:
    • Нажимаем кнопку Sign up (зарегистрироваться), попадаем на страницу регистрации, где вводим обязательные данные: имя пользователя, адрес электронной почты и пароль. После заполнения полей проходим верификацию.

      Первый шаг регистрации профиля на стартовой странице GitHub.

    • После заполнения данных и успешного прохождения верификации нажимаем на кнопку Select a plan.

      Второй шаг регистрации профиля на стартовой странице GitHub.

  3. Третий шаг — небольшой опрос от GitHub, который вы можете пройти, заполнив все поля и нажать Submit или пропустить, нажав skip this step.

    Опрос на третьем шаге регистрации.

  4. После прохождения всех этапов на сайте, на указанный при регистрации ящик вам придёт письмо от GitHub. Откройте его и подтвердите свой почтовый адрес, нажав Verify email address (подтвердить электронный адрес) или скопируйте вспомогательную ссылку из письма и вставьте её в адресную строку браузера.

    Подтверждение электронного адреса.

  5. После верификации GitHub предложит создать новый репозиторий, организацию или узнать больше о GitHub. Этот пункт пока можно пропустить и перейти в профиль.

    Переход в ваш профиль.
    Так выглядит ваш профиль после регистрации.

Теперь у вас есть профиль на GitHub.

Создание Git-репозитория

Обычно вы получаете репозиторий Git одним из двух способов:

  1. Вы можете взять локальный каталог, который в настоящее время не находится под версионным контролем, и превратить его в репозиторий Git, либо

  2. Вы можете клонировать существующий репозиторий Git из любого места.

В обоих случаях вы получите готовый к работе Git репозиторий на вашем компьютере.

Если у вас уже есть проект в каталоге, который не находится под версионным контролем Git, то для начала нужно перейти в него.
Если вы не делали этого раньше, то для разных операционных систем это выглядит по-разному:

для Linux:

для macOS:

для Windows:

а затем выполните команду:

Эта команда создаёт в текущем каталоге новый подкаталог с именем , содержащий все необходимые файлы репозитория — структуру Git репозитория.
На этом этапе ваш проект ещё не находится под версионным контролем.
Подробное описание файлов, содержащихся в только что созданном вами каталоге , приведено в главе Git изнутри

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

Мы разберем, что делают эти команды чуть позже.
Теперь у вас есть Git-репозиторий с отслеживаемыми файлами и начальным коммитом.

Клонирование существующего репозитория

Для получения копии существующего Git-репозитория, например, проекта, в который вы хотите внести свой вклад, необходимо использовать команду .
Если вы знакомы с другими системами контроля версий, такими как Subversion, то заметите, что команда называется «clone», а не «checkout».
Это важное различие — вместо того, чтобы просто получить рабочую копию, Git получает копию практически всех данных, которые есть на сервере.
При выполнении с сервера забирается (pulled) каждая версия каждого файла из истории проекта.
Фактически, если серверный диск выйдет из строя, вы можете использовать любой из клонов на любом из клиентов, для того, чтобы вернуть сервер в то состояние, в котором он находился в момент клонирования (вы можете потерять часть серверных хуков (server-side hooks) и т. п., но все данные, помещённые под версионный контроль, будут сохранены, подробнее об этом смотрите в главе Установка Git на сервер). Клонирование репозитория осуществляется командой .
Например, если вы хотите клонировать библиотеку , вы можете сделать это следующим образом:

Клонирование репозитория осуществляется командой .
Например, если вы хотите клонировать библиотеку , вы можете сделать это следующим образом:

Эта команда создаёт каталог , инициализирует в нём подкаталог , скачивает все данные для этого репозитория и извлекает рабочую копию последней версии.
Если вы перейдёте в только что созданный каталог , то увидите в нём файлы проекта, готовые для работы или использования.
Для того, чтобы клонировать репозиторий в каталог с именем, отличающимся от , необходимо указать желаемое имя, как параметр командной строки:

Эта команда делает всё то же самое, что и предыдущая, только результирующий каталог будет назван .

В Git реализовано несколько транспортных протоколов, которые вы можете использовать.
В предыдущем примере использовался протокол , вы также можете встретить или , использующий протокол передачи SSH.
В главе Установка Git на сервер мы познакомимся со всеми доступными вариантами конфигурации сервера для обеспечения доступа к вашему Git репозиторию, а также рассмотрим их достоинства и недостатки.

prev | next

Создание Git-репозитория

Сначала рассмотрим создание репозитория. Представим, что у вас уже есть папка для хранения файлов, но она еще не находится под контролем Git. 

Откройте «Командную строку‎» (Windows) или Терминал (Linux/macOS) и перейдите по пути данной папки.

В Linux выполните команду: ‎

cd /home/user/directory

В macOS

cd /Users/user/directory

В Windows:

cd C:/Users/user/directory

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

git init

Благодаря этой команде создается структура подкаталога со всеми необходимыми файлами. Кстати, все они расположены в подпапке с названием .git. Пока что проект не находится под контролем учета версий, поскольку в него добавлены только нужные элементы для работы Git. Для добавления файлов в репозиторий будем использовать git add. Команда git commit является заключительной:

git add

git commit -m 'initial project version'

Теперь у вас есть Git-репозиторий со всеми необходимыми составляющими и отслеживаемыми файлами.

Добавляем и изменяем файлы

Теперь давайте создадим в нашей папке новый текстовый документ с сообщением “Hello world!”.

Если мы откроем GitHub Desktop, мы увидим что наш файл увидела система и пометила как добавление новгго файла, отметив зеленым плюсом. Справа отобразив что именно сделали с файлом: зеленым выделены добавленные фрагменты.

Теперь мы готовы сделать свой первый коммит (commit). По факту это фраза означает внесения изменения в текущую ветку в локальном репозитории. Чтобы это сделать, нужно написать краткое сообщение, отражающее суть изменений, чтобы потом было проще в них ориентироваться. В данном случае мы добавили новый текстовый файл (сообщение может быть на любом языке, необязательно на английском). Github сам нам подсказал название коммита. Так же мы можем добавить описание изменений, чтобы другим пользователям было проще.

Когда мы готовы сделать коммит, нажимаем кнопку Commit to master. Это означает сделать коммит в локальную ветку master, про сами ветки расскажем чуть позже. Но мы сделали только коммит, теперь нужно чтобы изменились файлы в удаленном репозитории, то есть синхронизировать локальную и удалённую ветки master. Для этого нажимаем кнопку сверху Push origin.

Если все прошло успешно, и изменения запушились в удаленный репозиторий, то, обновив его страницу на GitHub, мы увидим новый файл hello world.txt.

Поверьте, адекватные описания коммитов — это очень важно!

Теперь давайте создадим файл на GitHub и скопируем его в локальный репозиторий. Нажимаем кнопку Create new file и называем его newfile.

Осталось “прописать” коммит и сделать его, нажав Commit new file:

Откроем GitHub Desktop и обнаружим, что система сама определила, что произошел внешний коммит и наши файлы нужно обновить. Если изменений не видно, нажмите F5 или перезапустите приложение. Нажмём на Pull origin и скачаем файлы в свой локальный репозиторий:

Git с помощью Termux

Использовались материалы:The Termux Wiki (wiki.termux.com)Proper Git client on Android (pedronveloso.com)

Примерный порядок действий для настройки пакета git в среде Termux для его использования с целью синхронизации локального репозитория с удаленным:

1) , в том числе:

Открыть для Termux доступ к внешнему хранилищу телефона, выполнив:

$ termux-setup-storage

1 $ termux-setup-storage

При этом в домашнем каталоге
$HOME появится каталог
storage/share  – симлинк на корень внешней памяти телефона ().

2) установить пакет git:

$ pkg install git

1 $ pkg install git

3) установить настройки по-умолчанию

$ git config —global <option> <value>

1 $ git config —global <option> <value>

При использовании параметра
—global настройка устанавливается в общем конфиге для всех репозиториев по-умолчанию, иначе – только для текущего репозитория.

Логин и эмейл:

1
2

$ git config —global user.name <NAME>
$ git config —global user.email <EMAIL>

Алгоритм команды pull:

$ git config —global pull.rebase true

1 $ git config —global pull.rebase true

Если для доступа к удаленному репозиторию используется логин/пароль (а не ключи SSH), то можно указать git, чтобы он сохранил пароль локально:

$ git config —global credential.helper store

1 $ git config —global credential.helper store

Примечание:
При этом в Linux данные сохраняются в файл в открытом виде в файле
~/.git-credentials.В Windows данные сохраняются в Credential Store (
> control userpasswords2).Есть мультиплатформенная утилита Git Credential Manager Core (github) от Microsoft для хранения секретной информации в Windows, Mac и Linux (сам не использовал).

Чтобы просмотреть внесенные настройки:

$ git config -l

1 $ git config -l

4) клонировать репозиторий

$ git clone <repo_url>

1 $ git clone <repo_url>

Если планируется использовать аутентификацию по логину/паролю (или токену PAT), используйте адрес подключения по протоколу HTTPS, например:

https://github.com/user/repo.git

1 https://github.com/user/repo.git

Если же по ключам SSH, то по протоколу SSH:

git@github.com:user/repo.git

1 git@github.com:user/repo.git

При необходимости, можно изменить адрес подключения с помощью команды:

$ git remote set-url origin <new_url>

1 $ git remote set-url origin <new_url>

Примечание:Исходя из уведомления от GitHub, начиная с 13.08.2021 сервис в целях безопасности больше не будет поддерживать аутентификацию по паролю. Вместо этого, нужно будет сгенерировать токен (PAT – personal access token) или использовать SSH-ключи.

5) при необходимости, добавить ssh-ключ (подробнее , а также здесь)

Для выполнения операций с удаленным репозиторием по ключу SSH, нужно публичную часть ключа добавить на хостинг Git, а приватный SSH-ключ добавить в утилиту
ssh-agent.

5.1) перенести приватную часть ключа на устройство

Если имеющихся ssh-ключей нет, то их нужно создать. В Termux, как и на Linux, это можно сделать с помощью команды
ssh-keygen.

Примечание:По-умолчанию, файлы ключей будут созданы в каталоге 
$HOME/.ssh, в приватной области памяти Termux. Это хорошо, т.к. у других приложений отсутствует доступ к этому расположению.

Если связка ssh-ключей уже имеется, то копируем файл приватного ключа на телефон (например, в корень внутренней памяти), а затем в Termux выполняем команду для перемещения файла в
$HOME/.ssh:

$ mv ~/storage/shared/id_rsa ~/.ssh/git_hub_key

1 $ mv ~/storage/shared/id_rsa ~/.ssh/git_hub_key

5.2) добавить ключ к агенту

Запустить утилиту 
ssh-agent в фоновом режиме, если она еще не запущена:

$ eval «$(ssh-agent -s)»

1 $ eval «$(ssh-agent -s)»

И добавить ключ SSH к агенту:

$ ssh-add ~/.ssh/git_hub_key

1 $ ssh-add ~/.ssh/git_hub_key

Просмотров:
814

Вариант 2. Я вообще ничего не знаю

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

Ну что ж, приступим к делу!

Допустим, вы хотите создать новый репозиторий. Это место, где будет «жить » ваш проект. Если вы не хотите создавать новый репозиторий, то можете склонировать уже существующий. Именно так вы копируете чужой проект или берете нужную вам информацию для работы/учебы. Мы еще к этому вернемся, но чуть позже.

Репозиторий — это место, в котором вы систематизируете свой проект. Здесь вы храните файлы, папки, видео, изображения, блокноты Jupyter Notebook, наборы данных и т.д. Перед началом работы с Git необходимо инициализировать репозиторий для проекта и правильно его подготовить. Это можно сделать на сайте GitHub.

Лучше сразу добавлять в репозиторий README-файл с информацией о проекте. Это можно сделать в момент создания репозитория, поставив галочку в соответствующем поле.

Перейдите на сайт GitHub. Нажмите на значок + в верхнем правом углу, а затем выберите New repository.
Придумайте имя репозитория и добавьте короткое описание.
Решите, будет ли этот репозиторий размещаться в открытом доступе или останется закрытым для просмотра.
Нажмите Initialize this repository with a README для добавления README-файла

Настоятельно рекомендую снабжать все ваши проекты файлом-описанием, ведь README — это первая вещь, на которую люди обращают внимание при просмотре репозитория. К тому же, здесь можно разместить нужную информацию для понимания или запуска проекта.

Новый репозиторий

Создание нового репозитория

При желании можете уже сейчас начинать работать над проектом. Добавляйте файлы, вносите в них изменения и т.д. напрямую с сайта GitHub. Однако конечный результат подобной деятельности может вас немного огорчить.

Вносить изменения в проект можно двумя способами. Вы можете изменять файлы/блокноты на компьютере либо делать это на сайте GitHub.

Допустим, вам захотелось подкорректировать README-файл на сайте GitHub.

  • Для начала перейдите в ваш репозиторий.
  • Для выбора файла кликните по его названию (например, кликните по README.md для перехода к файлу-описанию).
  • В верхнем правом углу вы увидите иконку с карандашом. Нажмите на нее для внесения изменений.
  • Напишите короткое сообщение, передающее суть изменений (и подробное описание, если сочтете это нужным).
  • Нажмите кнопку Commit changes.

Изменение файла на GitHub

Подготовка коммита с изменениями

Вы успешно внесли изменения в README-файл своего нового репозитория! Обратите внимание на небольшую кнопку на картинке выше. Она позволяет создавать новую ветку этого коммита и добавлять Pull request

Запомните ее, скоро к ней вернемся.

Как вы видите — ничего сложного!

Лично я предпочитаю работать с файлами на локальном компьютере, а не на сайте GitHub. Поэтому давайте научимся и этому.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector