Как клонировать проект с github в visual studio

Обновлено: 04.07.2024

Я пытаюсь поместить существующий проект в систему контроля версий Git, но мне неясно несколько моментов.

Я создал учетную запись Git "Team Foundation Service" в Интернете.

Как мне поместить существующие файлы в онлайн-репозиторий?

Я поискал аналогичный вопрос - способ, которым мне удалось инициализировать репозиторий Git для существующего файла проекта, заключается в следующем (отказ от ответственности: это делается в Visual Studio 2013 Express, без установки Team Foundation Server):

  1. Откройте проект в Visual Studio.
  2. Перейдите в меню ФайлДобавить в систему управления версиями .

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

Вот как это сделать в Visual Studio 2015.

Откройте проект и перейдите в Инструменты >> Параметры >> вкладка «Управление версиями» и выберите «Git» в качестве элемента управления версиями.

Перейдите в меню «Файл» и выберите «Добавить в систему управления версиями».

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

По сути, ваш репозиторий git был создан правильно локально (это основной шаг с проектом VS, поскольку эта папка содержит много файлов, которые мы хотим игнорировать).

Теперь вы можете подключить этот репозиторий git к любому другому git, например GitHub, BitBucket и т. Д. В git bash (вне Visual Studio).

Сейчас я запускаю сеанс Git Bash в этом рабочем каталоге, и, поскольку я использую BitBucket, я следую приведенным там инструкциям (просто скопируйте оттуда строки ниже).

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

Чтобы добавить проект в решение, просто откройте окно Team Explorer и перейдите в раздел «Изменения». Затем в разделе «Файлы без отслеживания» щелкните «Параметры просмотра» и выберите «Переключиться на представление в виде дерева» (если оно еще не отображается в виде дерева), щелкните правой кнопкой мыши корневую папку проекта и выберите Добавить .

Enter image description here

Для меня репозиторий Git (не GitHub) уже был создан, но пуст. Это было моим решением для добавления существующего проекта в репозиторий Git:

Было бы интересно увидеть, как все это делается прямо в Visual Studio 2015 без таких инструментов, как Git Extensions, но то, что я пробовал в Visual Studio, не сработало ( Добавить в систему управления версиями недоступно для моего проекта , добавление пульта не помогло и т. д.).

Если вы хотите открыть существующий проект из GitHub, вам необходимо сделать следующее (это шаги только для Visual Studio 2013 . И новее, так как в более старых версиях нет встроенной установки Git):

Team explorer → Подключиться к teamProjects → Локальные репозитории Git → Клонировать .

Скопируйте / вставьте свой адрес GitHub из браузера.

Выберите локальный путь для этого проекта.

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

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

В Visual Studio есть концепция решений. Однако в git есть концепция репозитория git, отслеживаемого локальными и удаленными ветвями. Все файлы и папки, добавляемые в git, являются локальными.

Теперь вернемся к решениям Visual Studio, когда вы создаете стандартный проект-шаблон, он создает все проекты локально для этого решения.

Таким образом, проблема возникает, когда вы добавляете проект, который не является локальным для решения или git, если на то пошло. Что происходит, так это то, что файл решения .sln обновляется с учетом местоположения проекта, но фактическое содержимое проекта, файлы и папки проекта не могут быть добавлены в git, потому что они находятся в отдельном каталоге или отдельном сетевом диске или одном каком-то ftp-сервере и т. д. Это может быть предпочтительнее, если вам нужна только ссылка на файл проекта, который компилируется только в файле .sln, или если вы хотите поместить их в отдельные репозитории git или github. Но вы не хотите, чтобы реальные файлы отслеживались git локально.

Git в Visual Studio - добавить существующий проект ; как опубликовать свой локальный репозиторий в проекте на GitHub, GitLab и т. д.

Итак, вы создали решение и хотите, чтобы оно было загружено и где-то установлен контроллер версий через вашу учетную запись Git. В Visual Studio 2015 для этого есть инструменты в Team Explorer.

Как упоминает Meuep, загрузите свое решение, а затем перейдите по ссылке File >> Add to Source Control . Это эквивалент git init . Тогда у вас будет это:

Team Explorer Home

Теперь выберите Settings >> Repository Settings и прокрутите до Remote .

Enter image description here

Настройте origin (убедитесь, что вы указали это зарезервированное имя) и задайте URI.

Затем вы можете использовать Add , Sync и Publish .

Если желаемый репозиторий уже существует (возможно, на GitHub), вы можете клонировать его в свою локальную систему, а затем скопировать в него каталог решения. Затем добавьте файлы, зафиксируйте файлы и нажмите локальный. Это поместит решение в репозиторий.

Процесс значительно упрощен для VS2017 / VS2019 (возможно, даже раньше, но я не тестировал) в сочетании с GitHub:

Сначала создайте «папку решений» с желаемым относительным путем. Обратите внимание, что Visual Studio 2012 не создает системную папку с таким же относительным путем.

Теперь внутри этой «Папки решений» добавьте новый проект, но вы должны быть осторожны при его определении, чтобы относительный путь в системе совпадал с относительным путем вашей новой «Папки решений». Если нужная системная папка не существует, Visual Studio 2012 создаст ее для нового проекта. (Как отмечалось выше, этого не происходит, когда вы добавляете новую «Папку решений».)

Если вы хотите добавить существующий файл с соответствующим относительным путем, вы должны сначала создать файл по соответствующему системному относительному пути вне Visual Studio. Затем вы можете Добавить существующий файл в Visual Studio.

В Visual Studio 2015 единственный способ заставить его работать - это запустить git init из корня моего каталога с помощью командной строки. Затем я зашел в Team Explorer и добавил локальный репозиторий git. Затем я выбрал этот локальный репозиторий git, перешел в Настройки-> Настройки репозитория и добавил свое удаленное репозиторий. Вот так я наконец смог интегрировать Visual Studio для использования моего существующего проекта с git.

Я прочитал все ответы, но ни один из них не помог мне. Я перешел в File-> Add To Source Control, который должен был делать то же самое, что и git init , но, похоже, он не инициализировал мой проект, потому что, когда я затем перешел в Team Explorer, все параметры были серым цветом. Также ничего не будет отображаться в диалоговом окне «Изменения». В другом ответе говорилось, что мне просто нужно было создать локальное репо в Team Explorer, и тогда мои изменения будут отображаться, но это тоже не сработало. Все параметры Git в Team Explorer работали только после того, как я инициализировал свой проект через командную строку.

Я новичок в Visual Studio, поэтому не знаю, пропустил ли я что-то очевидное, но похоже, что мой проект инициализировался не из Visual Studio.

Щелкните правой кнопкой мыши имя решения в обозревателе решений. Выберите «Добавить в систему управления версиями» .

Затем перейдите в SourceTree и выберите Clone / New . Выберите Добавить рабочую папку и укажите на новое место Git, которое вы только что создали внутри своего решения.

Идите и возьмите адрес клона для пустого Git (Bitbucket или GitHub) и вернитесь в SourceTree, щелкните правой кнопкой мыши Remotes и добавьте New Remote . (Обратите внимание, что в современных версиях перейдите в РепозиторииДобавить удаленный . . Вставьте свой URL-адрес в это поле и нажмите OK .

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

Создайте новый локальный репозиторий Git для вашего проекта, выбрав Добавить в систему управления версиями в строке состояния в правом нижнем углу Visual Studio. Это создаст новый репозиторий в папке, в которой находится решение, и зафиксирует ваш код в этом репозитории.

Подключите Remote Source Control, введите имя репозитория и выберите Опубликовать репозиторий .

Просто щелкните свое решение правой кнопкой мыши и выберите Добавить в систему управления версиями . Затем выберите Git.

Теперь ваши проекты добавлены в локальную систему управления версиями. Щелкните правой кнопкой мыши один из ваших файлов и выберите Зафиксировать .

Изучив Visual Studio, я наконец нашел ответ, на который потребовалось гораздо больше времени, чем следовало бы.

Чтобы взять существующий проект без системы управления версиями и поместить его в существующий ПУСТОЙ (это важно) репозиторий GitHub, процесс прост, но сложен, потому что вы в первую очередь склоняетесь к использованию Team Explorer, что неправильно и поэтому у вас проблемы.

Сначала добавьте его в систему управления версиями. Выше есть некоторые объяснения этого, и все зашли так далеко.

Теперь это открывает пустой ЛОКАЛЬНЫЙ репозиторий, и уловка, о которой вам никто никогда не говорит, заключается в том, чтобы полностью игнорировать Team Explorer и перейти в обозреватель решений, щелкнуть решение правой кнопкой мыши и нажать кнопку «Зафиксировать».

Затем это фиксирует все различия между вашим существующим решением и локальным репозиторием, по существу обновляя его всеми этими новыми файлами. Дайте ему имя коммита по умолчанию «начальные файлы» или что-то еще, что плавает ваша лодка, и зафиксируйте.

Затем просто нажмите Синхронизировать на следующем экране и введите ПУСТОЙ URL-адрес репозитория GitHub. Убедитесь, что он пуст, иначе у вас возникнут конфликты основной ветки, и это не позволит вам. Так что либо используйте новый репозиторий, либо удалите старый, который вы ранее испортили. Имейте в виду, что это Visual Studio 2013, поэтому ваш опыт может отличаться.

  1. Прежде всего вам необходимо установить программное обеспечение Git на локальную машину разработки, например Расширения Git.
  2. Затем сделайте git init в папке решения. Это правильный способ создать папку репозитория.
  3. Создайте разумный файл .gitignore , чтобы не делать ненужного.
  4. git add
  5. git commit
  6. Добавьте правильный пульт, как описано в вашей учетной записи Team Foundation Server git remote add origin <proper URL>
  7. git push ваш код

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

Сведения о клонировании общедоступного репозитория из GitHub на локальный компьютер с помощью Visual Studio Code.

При работе в Visual Studio Code с репозиторием необходимо использовать отдельные средства.

В следующих процедурах будут использованы именованные частипользовательского интерфейса Visual Studio Code.

Использование палитры команд для клонирования репозитория

Чтобы приступить к работе, скачайте пример проекта, как описано ниже.

Нажмите клавишу F1, чтобы отобразить палитру команд.

В строке палитры команд введите gitcl , выберите команду Git: клонировать и нажмите клавишу ВВОД.

Команда gitcl в строке командной палитры Visual Studio Code

Если появится запрос на ввод URL-адреса репозитория, выберите параметр клонирования из GitHub и нажмите клавишу ВВОД.

Если поступает запрос на вход в GitHub, завершите процедуру входа.

Введите azure-samples/js-e2e-express-server в поле URL-адрес репозитория.

Выберите (или создайте) локальный каталог, в который нужно клонировать проект.

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

Создание ветви для изменений с помощью Git CLI

Используйте Git в палитре команд, чтобы создать ветвь.

Нажмите клавишу F1 , чтобы отобразить палитру команд.

Найдите элемент git branch и выберите Git: Create Branch .

Экран &quot;Поиск по фразе &quot;git branch&quot; и выбор пункта &quot;Git: Create Branch&quot;.

Введите имя для новой ветви. Имя ветви будет отображатся в строке состояния.

Экран &quot;Отображение имени ветви в строке состояния&quot;.

Создание ветви из строки состояния

Выберите имя ветви в строке состояния.

Строка состояния обычно находится в нижней части Visual Studio code.

Выберите в палитре команд элемент Создание ветви.

Введите имя для новой ветви.

Введите имя для новой ветви. Имя ветви будет отображатся в строке состояния.

Экран &quot;Отображение имени ветви в строке состояния&quot;.

Фиксация изменений с помощью Git

Изменив ветвь, зафиксируйте изменения.

Переключитесь на панель действий и выберите значок системы управления версиями или нажмите клавиши CTRL + SHIFT + G .

Добавление файла yarn.lock в Git

Отправка локальной ветви в удаленное расположение из строки состояния

В строке состояния Visual Studio Code выберите значок отправки справа от имени ветви.

Строка состояния Visual Studio Code, выделен значок отправки.

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

Отправка локальной ветви в удаленное расположение из расширения "Система управления версиями"

Щелкните значок "Система управления версиями" на панели действий.

Щелкните многоточие (. ) и выберите элемент Push или Push to .

Панель системы управления версиями Visual Studio Code, выделен значок отправки.

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

Просмотр выходных данных Git

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

Щелкните значок "Система управления версиями" на панели действий.

Щелкните многоточие (. ) и выберите элемент Показать выходные данные Git.

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

Что такое GIT

Git - система управления контроля версиями, репозитории Git содержат файлы, историю, конфигурации управляемые Git. Данные могут отправляться из локальной папки в Git репозиторий и обратно, локальное состояние подразумевает рабочую папку которая содержит измененные файлы готовые для помещения в .git каталог, при помещении в данный каталог - Commit, указываются комментарии к данному коммиту, что по факту является историей, удаленный репозиторий содержит ветки Branches, основная ветка называется Master, данные могут отправляться как в Master, так и другие ветки (ответвления) проекта.

GIT является одной из самых популярных систем. Её отличие от других программ — отсутствие графической версии. Поэтому работа с Git ведётся через командную строку. В разных операционных системах свои программы для взаимодействия с Git.

В Windows их две: PowerShell и cmd.exe. В Ubuntu это Terminal. Самая популярная программа на macOS тоже называется Terminal. Если вам не подходит встроенная в систему программа для работы с командной строкой, вы можете поставить свою. Например, написанную на JavaScript программу Hyper, которая работает на любой операционной системе. На Windows популярны программы Cmder и Git Bash, а на macOS — iTerm.

Установка GIT

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

Установка GIT в Linux (Ubuntu)

В зависимости от вашего дистрибутива Linux требуется установить через консоль, например в убунту эта команда будет иметь следующий вид:

Команды для других дистрибутивов можно посмотреть здесь.

Установка на macOS

Установка в Windows

Скачайте exe-файл инсталлятора с сайта Git и запустите его. Это Git для Windows, он называется msysGit. Установщик спросит добавлять ли в меню проводника возможность запуска файлов с помощью Git Bash (консольная версия) и GUI (графическая версия). Подтвердите действие, чтобы далее вести работу через консоль в Git Bash. Остальные пункты можно оставить по умолчанию.

Проверим, что Git установлен.

После того, как все действия по установке завершены, убедимся, что Git появился в системе компьютера. Откройте терминал и введите git --version , должна появиться текущая версия программы на вашей машине. Эта проверка подходит для всех операционных систем.

Настройка Git

После установки производим настройку своего профиля вводя в терминал поочереди команды:

Заменив значения ВАШЕ_ИМЯ и АДРЕС вашими значениями.

После указания своих данных, можно их просмотреть:

Обратите внимание, что в командах, указанных выше, есть опция --global . Это значит, что такие данные будут сохранены для всех ваших действий в Git и вводить их больше не надо. Если вы хотите менять эту информацию для разных проектов, то в директории проекта вводите эти же команды, только без опции --global .

GITHUB

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

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

После того как у вас будет создан аккаунт в Github можно будет начать полноценно работать с ним.

Копирование репозитория Git в локальную папку

Для начала определим, что такое репозиторий. Это рабочая директория с вашим проектом. По сути, это та же папка с HTML, CSS, JavaScript и прочими файлами, что хранится у вас на компьютере, но находится на сервере GitHub. Поэтому вы можете работать с проектом удалённо на любой машине, не переживая, что какие-то из ваших файлов потеряются — все данные будут в репозитории при условии, что вы их туда отправите. Но об этом позже.

Команда для копирования репозитория:

После клонирования переходим в папку репозитория:

Добавление данных в Git или коммит (commit)

Создаем файл с текстом:

Видим, что у нас есть файл готовый для загрузки в Git, добавляем его в репозиторий:

Снова смотрим статус, видим что у нас появился новый файл example.txt, добавляем данный файл в репозиторий используя git commit:

Отправка данных в онлайн Git репозиторий

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

Обратите внимание, что если вы используете двухфакторную авторизацию на github и являетесь пользователем linux, то вам нужно в настройках, в разделе "Developers setting" создать новый Personal access tokens и данный токкен использовать вместо пароля при аутентификации.

VISUAL STUDIO CODE

Данное ПО является хорошим выбором для комфортной работы с GIT и GITHUB. В VS Code есть встроенный терминал, который можно вызвать с помощью комбинации клавиш:

Внутри данного терминала вы можете использовать теже команды для работы с GIT которые были описаны выше.

Настройка терминала VS Code в Windows

По умолчанию консоль VS Code в Windows запускает стандартную командную строку Windows, которая не может работать с GIT, чтобы все работало нужно запустить терминал bash , для этого выполним следующие действия:

Инструкция как быстро и просто сделать копию репозитория GitHub к себе на компьютер при помощи редактора Visual Studio Code. Задача буквально на три клика.

git clone

Давненько не клонировал репозитории GitHub из-за чего не сразу вспомнил как это делается. Это при том что в редакторе VSCode весь процесс занимает буквально два-три клика мышкой.

Если коротко и по делу, то весь процесс таков:

  • Берём ссылку на репозиторий GitHub
  • Нажимаем клавишу F1 и вводим команду Git: Clone
  • В поле ввода вставляем ссылку на репозиторий
  • Выбираем место куда сохранять

Теперь всё то же только уже со скриншотами.

Открываем редактор VSCode и нажимаем на клавиатуре клавишу F1 . В появившейся командной строке редактора вводим команду Git: Clone

командная строка VSCode

После запуска команды Git: Clone появляется поле ввода где просят указать ссылку на клонируемый репозиторий:

поле ввода в vscode

В это поле нужно вставить ссылку на репозиторий GitHub который нужно скопировать на компьютер. Ссылку можно взять на странице самого репозитория. Для этого нажимаем кнопку Code и в появившемся окне нажимаем кнопку скопировать url

ссылка на github

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

открыть репозиторий

Git и TFS: история дружбы

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

Проект Git в Team Foundation Service

После регистрации в TFS на странице команд есть новая кнопка — New Team Project + Git. Пара кликов — и проект Git готов.



Собственно, на этом все. :) Но это — верхушка айсберга, внутри интеграция гораздо сложнее. Дальше — про то, как из Visual Studio подключиться и поманипулировать нашим Git-проектом.

Visual Studio и Git

Делаю сразу оговорку — Visual Studio — не замена существующему UI Git. Visual Studio может быть заменой, но чаще используется в совокупности с другими средствами. Если Git был создан внутри TFS, то у разработчика появляются некоторые фичи, пришедшие из TFS, например, Work Items, но VS спокойно работает с любыми локальными репозиториями и заслуженными Git-деятелями в лице GitHub и BitBucket.

Для подключения к Git-репозиторию достаточно нажать TEAM | Connect to Team Foundation Server.


Откроется Team Explorer. Как видите, у меня уже есть склонированный (с GitHub) репозиторий, и тут же — репозиторий TFS. Для клонирования нового репозитория Git можно нажать Clone и ввести данные подключения.


Для подключения аккаунта Visual Studio Online нажмем Select Team Projects, выберем аккаунт и установим, какой репозиторий надо подтянуть к нам в VS.


После подключения проектов выберем нужный и нажмем в контекстном меню кнопку Clone.



На этом процесс клонирования закончен — в бранче Local Git Repositories в Team Explorer появится склонированный репозиторий. Повторюсь — с помощью Clone можно клонировать любой Git-репозиторий.

Еще одна интересная фича интеграции Visual Studio и Git — это возможность создать новый проект и сразу добавить его в локальную систему контроля версий. Для этого при создании нового проекта в VS достаточно отметить Add to source control.



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


Полезные функции на этой странице есть еще внутри Repository Settings — можно настроить .gitIgnore и .gitattributes.
Дальше можно коммитить.


Чтобы сделать Pull и получить последние апдейты от команды, нужно перейти на Commits и нажать Fetch для того, чтобы сначала посмотреть, что там вообще придет (и есть ли чему придти).


Все хорошо — нажмем Pull и получим последний апдейт. Дополнительные сведения можно найти тут — Pull changes from the team.


Использование бранчей

Для использования бранчей в Team Explorer выделена специальная секци Branches.


После подключения к репозиторию доступна только master.


Создадим новый бранч, нажав New Branch.



Поскольку бранчи Git локальны до момента Push, новый бранч будет размещен в Unpublished Branches. Поменять бранч для коммитов можно на уже упоминавшейся выше странице Commits.


Замерджить контент можно, нажав Merge и выбрав бранчи. Подробнее про бранчи и мерджи — Git Branching.


Если в процессе мерджа или пулла возникнут конфликты, они тут же могут быть разрезолвены (самые простые, конечно).


Для просмотра истории достаточно нажать View History в контекстном меню бранча.


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


Многое из этого также доступно на портале TFS. Для того, чтобы перейти туда из VS, нужно на странице проекта в Team Explorer нажать Web Portal.

Читайте также: