Как преобразовать существующий непустой каталог в рабочий каталог Git и перенаправить файлы в удаленный репозиторий

  • У меня есть непустой каталог (например,/etc/something) с файлами, которые нельзя переименовать, переместить или удалить.

  • Я хочу проверить этот каталог на git на месте.

  • Я хочу, чтобы иметь возможность переместить состояние этого репозитория в удаленный репозиторий (на другой машине), используя "git push" или что-то подобное.

Это тривиально, используя Subversion (в настоящее время мы делаем это с помощью Subversion), используя:

svn mkdir <url> -m <msg>
cd <localdir>
svn co <url> .
svn add <files etc>
svn commit -m <msg>

Что такое эквивалент git?

Могу ли я "git клонировать" в пустой каталог и просто перемещать каталог .git и все работать?

Ответ 1

Учитывая, что вы создали демон git на <url> и пустой репозиторий:

cd <localdir>
git init
git add .
git commit -m 'message'
git remote add origin <url>
git push -u origin master

Ответ 2

Это как я. Я добавил объяснение, чтобы понять, что, черт возьми, происходит.

Инициализировать локальный репозиторий

  • сначала инициализировать Git с

    мерзавец

  • Добавить все файлы для контроля версий с

    мерзавец добавить.

  • Создать коммит с сообщением на ваш выбор

    git commit -m 'AddingBaseCode'

Инициализация удаленного репозитория

  • Создайте проект на Github и скопируйте URL вашего проекта. как показано ниже:

    enter image description here

Связь удаленного репо с локальным репо

  • Теперь используйте скопированный URL для связи вашего локального репо с удаленным репозиторием GitHub. Когда вы клонируете репозиторий с помощью git clone, он автоматически создает удаленное соединение с именем origin, указывающее обратно на клонированный репозиторий. Команда remote используется для управления множеством отслеживаемых репозиториев.

    git remote добавить источник https://github.com/hiteshsahu/Hodium-Word.git

синхронизировать

  • Теперь нам нужно объединить локальный код с удаленным кодом. Этот шаг очень важен, в противном случае мы сможем отправить код на Github. Вы должны вызвать 'git pull' перед отправкой кода.

    мастер происхождения git pull --allow -u nrelated-history

Зафиксируйте свой код

  • Наконец-то перенести все изменения на Github

    git push -u мастер оригинала

Ответ 3

Здесь мое решение:

git init
git remote add origin PATH/TO/REPO
git fetch
git checkout -t origin/master

Ответ 4

Если удаленный репозиторий не пуст (это так, если вы используете IBM DevOps на hub.jazz.net), вам необходимо использовать следующую последовательность:

cd <localDir>
git init
git add -A .
git pull <url> master
git commit -m "message"
git remote add origin <url>
git push

ИЗМЕНИТЬ 30 января 17: Пожалуйста, см. Комментарии ниже, убедитесь, что вы находитесь на правильном репо!

Ответ 5

Когда репозиторий github не пустой, как .gitignore и лицензия

Используйте pull --allow-unrelated-history, а push --force-with-lease

Используйте команды

git init
git add .
git commit -m "initial commit"
git remote add origin https://github.com/...
git pull origin master --allow-unrelated-histories
git push --force-with-lease

Ответ 6

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

ПРИМЕЧАНИЕ: я использовал рабочий стол github для создания и открытия выходящего хранилища.

Ответ 7

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

Это не может быть официальным способом, но это работает хорошо.

Предположим, у вас есть проект с именем " XYZ " на вашем ПК. Теперь вы хотите сделать git-репо этого проекта на github и использовать его функциональные возможности.

Шаг 1: перейдите на " www.github.com "

Шаг 2: создайте репозиторий с README.md (назовите его так, как вам нравится)

Шаг 3: клонируйте репозиторий на ваш компьютер.

Шаг 4: В клонированной папке вы получите две вещи: папку " .git " и файл " README.md ". Скопируйте эти два в папку вашего проекта " XYZ ".

Шаг 5: Удалить клонированный репо.

Шаг 6: добавьте, передайте и отправьте все файлы и папки вашего проекта.

Теперь вы можете просто использовать свой проект " XYZ " в качестве репозитория git.