Как добавить контроль версий Git (Bitbucket) в существующую папку с исходным кодом?


83

Как я могу добавить содержимое существующей папки в систему контроля версий Git?

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

Итак, как мне просто зайти в свою папку и сделать из нее репозиторий?


Репозиторий git уже существует на bitbucket? Или вы только начинаете с нуля и хотите создать репозиторий git, который будет на битбакете?
Jeff B

Я уже создал репо на битбакете.
user1406716

3
Здесь описано именно то, что вам нужно. samranga.blogspot.com/2015/07/…
Самита Чатуранга

Если у вас есть такой инструмент, как Visual Studio для Git - вам когда-нибудь понадобится использовать командную строку? У него есть средство публикации, где вы можете опубликовать совершенно новую ветку
Peter PitLock

Ответы:


177

Окончательное рабочее решение с использованием ответа @Arrigo и комментария @Samitha Chathuranga, я соберу все вместе, чтобы создать полный ответ на этот вопрос:

  1. Предположим, у вас есть папка с вашим проектом на ПК;
  2. Создайте новый репозиторий на bitbucket: введите описание изображения здесь

  3. Нажмите на У меня есть существующий проект : введите описание изображения здесь

  4. Откройте консоль Git CMD и введите команду 1 со второго изображения (перейдите в папку проекта на вашем ПК)

  5. Введите команду git init

  6. Введите команду git add --all

  7. Введите команду 2 со второго изображения ( git remote add origin YOUR_LINK_TO_REPO)

  8. Введите команду git commit -m "my first commit"

  9. Введите команду git push -u origin master

Примечание: если вы получаете ошибку, неспособную определить адрес электронной почты или имя, просто введите следующие команды после 5-го шага:

 git config --global user.email "yourEmail"  #your email at Bitbucket
 git config --global user.name "yourName"  #your name at Bitbucket

@VibhavChaddha есть команда git:git remote add origin YOUR_LINK_TO_REPO
Choletski

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

1
На шаге 7, если у вас нет открытого ключа, настроенного для ssh (т.е. получить доступ запрещен (publickey) .fatal: не удалось прочитать из удаленного репозитория. При нажатии), используйте https URL, git remote set-url origin https://<username>@bitbucket.org/<username>/reponame.git
M_K

1
@Jonjie там может быть любой текст, какой хочешь
Холецкий

1
@Choletski Отлично! :)
Jonjie

27

Вы можете создать каталог Git в каталоге, содержащем другие файлы. После этого вы можете добавить файлы в репозиторий и сделать там коммит.

Создайте проект с некоторым кодом:

$ mkdir my_project
$ cd my_project
$ echo "foobar" > some_file

Затем, находясь в папке проекта, сделайте начальную фиксацию:

$ git init
$ git add some_file
$ git commit -m "Initial commit"

Затем для использования Bitbucket или чего-то подобного вы добавляете remoteи нажимаете:

$ git remote add some_name user@host:repo
$ git push some_name

Вы также можете затем настроить ветви отслеживания и т. Д. См. git remote set-branchesСоответствующие команды для этого.


1
Нужно ли вам сначала создать репозиторий git в битбакете, чтобы иметь возможность нажимать на него?
Jeff B

4
Да. Вы должны создать место на bitbucket, чтобы они знали, кого ожидать, репо, которое они создают, будет пустым, поэтому вы можете протолкнуть туда что угодно :)
Йоханнес

Я получаю сообщение об ошибке ниже. {master *} ~ / sites / example7.dev $ git remote add some_name mavme@bitbucket.org/mavme/example-site-example7.dev.git 04:40:46 {master *} ~ / sites / example7.dev $ git push some_name Пароль для ' mavme@bitbucket.org ':
user1406716

следующая часть сообщения об ошибке, так как она не поместилась в один комментарий: на mavme@bitbucket.org/mavme/example-site-example7.dev.git ! [отклонено] master -> master (без перемотки вперед) ошибка: не удалось отправить некоторые ссылки на ' mavme@bitbucket.org/mavme/example-site-example7.dev.git ' Чтобы предотвратить потерю истории, не- обновления с быстрой перемоткой вперед были отклонены. Объедините удаленные изменения (например, «git pull») перед повторным нажатием. См. Подробности в разделе «Примечание о быстрой перемотке вперед» в «git push --help». 04:40:54
user1406716

Похоже, что bitbucket по какой-то причине создал главную ветку. Вы можете клонировать его ( git clone mavme@bitbucket.org/mavme/example-site-example7.dev.git') и проверить, нет ли там ничего стоящего. Вы продвигаете свой проект с помощью force ( git push -f some_name)
Йоханнес

24

Пользователь Йоханнес рассказал вам, как добавить существующие файлы в репозиторий Git в общей ситуации . Поскольку вы говорите о Bitbucket, я предлагаю вам сделать следующее:

  1. Создайте новый репозиторий на Bitbucket (вы можете увидеть кнопку «Создать» вверху страницы своего профиля), и вы перейдете на эту страницу:

    Создать репозиторий на Bitbucket

  2. Заполните форму, нажмите «Далее» и вы автоматически перейдете на эту страницу:

    Создать репозиторий с нуля или добавить существующие файлы

  3. Выберите добавить существующие файлы, и вы перейдете на эту страницу:

    Введите описание изображения здесь

  4. Вы используете эти команды и загружаете существующие файлы в Bitbucket. После этого файлы будут в сети.


3
Команды на 4-м шаге выдадут ошибки. Необходимо выполнить следующие шаги по этой ссылке. samranga.blogspot.com/2015/07/…
Самита Чатуранга

2

Команды приведены в вашей учетной записи Bitbucket. Когда вы открываете репозиторий в Bitbucket, он дает вам полный список команд, которые необходимо выполнить в указанном порядке. Не хватает только того, где именно нужно выполнять эти команды (Git CLI, терминал SourceTree ).

Я боролся с этими командами, когда писал их в Git CLI, но нам нужно выполнить команды в окне терминала SourceTree, и репозиторий будет добавлен в Bitbucket.


1

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

TL; DR : создайте репо, переместите файлы в папку существующих проектов, SourceTree спросит вас, где находятся его файлы, найдите файлы. Готово, ваше репо находится в другой папке.

Длинный ответ:

  1. Создайте свой новый репозиторий на Bitbucket
  2. Нажмите "Клонировать в SourceTree"
  3. Позвольте программе разместить ваше новое репозиторий там, где она хочет, в моем случае SourceTree создал новую папку в Мои документы.
  4. Найдите в проводнике Windows вашу новую папку репозитория.
  5. Вырежьте .hg и README (или что-нибудь еще, что найдете в этой папке)
  6. Вставьте его в то место, где находится ваш существующий проект
  7. Вернитесь в SourceTree, и он скажет «Обнаружена ошибка ...», просто нажмите OK.
  8. Слева у вас будет репозиторий, но с красным сообщением: Репозиторий перемещен или удален. Щелкните по нему.
  9. Теперь вы увидите всплывающее окно «Отсутствует репозиторий». Нажмите «Изменить папку» и найдите папку с существующим проектом, в которую вы переместили ранее сохраненные файлы.
  10. Это оно!

Советы. Параметр «Клонировать в SourceTree» недоступен сразу после создания нового репозитория, поэтому сначала необходимо нажать «Создать файл Readme», чтобы этот параметр стал доступен.


шаг 6.5 удалить новую папку репозитория.
AMAN77
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.