У меня есть существующий репозиторий Git на моей локальной машине. Я хотел бы переместить этот репозиторий на свой веб-сервер, а затем git clone
на моем локальном компьютере, чтобы проверить мой репозиторий с сервера. Затем я планирую продолжить работу на локальной машине и перенаправить обновления на сервер. Я могу ssh от моей локальной машины к серверу, но не наоборот. Как мне это сделать? Я думаю, что git bundle должен каким-то образом использоваться, хотя, когда я пытался git clone
мой пакет на моем сервере, я получил предупреждение: удаленный HEAD относится к несуществующей ошибке ref, неспособной проверить "ошибку. На моей локальной машине работает OS X, на сервере работает Linux.
Git: переместить существующий репозиторий с ПК на сервер, клон с сервера
Ответ 1
На сервере Linux в новом каталоге выполните:
git init --shared --bare
Затем на вашем локальном компьютере:
git remote add origin server:path/to/repo
git push --all origin
После этого у сервера будет полная копия репозитория, и вы сможете нажать и вытащить его и обратно. Там нет необходимости проверять другой клон с сервера, если у вас уже есть локально.
Ответ 2
Вместо "git нажмите начальный мастер" use "git push - all origin", чтобы вы перемещались по всем ветвям, а не только к ведущей ветке.
Ответ 3
Как насчет этого:
local> cd my_repo.git
local> git remote add origin [email protected]:/path/to/my_repo.git
local> git config branch.master.remote origin
local> git config branch.master.merge refs/heads/master
local> git push origin master
Это отправит данные из вашего локального репо на ваш сервер. Затем сделайте следующее:
local> cd ..
local> git clone [email protected]:/path/to/my_repo.git my_repo2.git
Затем вы будете клонированы с сервера. Когда вы удовлетворены, вы можете избавиться от исходного репо и, возможно, переименовать второй.