Как изменить git-репозиторий, в который отправляется приложение rail? Я знаю, что это возможно, потому что я сделал это несколько недель назад.
В принципе, у меня есть две очень разные версии приложения на моей локальной машине. Я бы хотел, чтобы первоначальное приложение по-прежнему указывало на старый репозиторий. Однако новая версия должна быть помещена в совершенно отдельный репозиторий.
Когда я запускаю git init
в myapps/old_app/
, он помещает Reinitialized existing Git repository in /Users/jamespollard/rails/old_repository/. git/
И
Когда я запускаю git init
в myapps/new_app/
, он помещает Reinitialized existing Git repository in /Users/jamespollard/rails/new_repository/.git/
Однако, когда я пытаюсь git push что-либо в репозиторий, он все равно отправляется в old_repository.
Если я ввожу $ git remote origin set-url git@github.com:mygithub/myapp.git
Я получаю
error: Unknown subcommand: origin
usage: git remote [-v | --verbose]
or: git remote add [-t <branch>] [-m <master>] [-f] [--mirror=<fetch|push>] <name> <url>
or: git remote rename <old> <new>
or: git remote rm <name>
or: git remote set-head <name> (-a | -d | <branch>)
or: git remote [-v | --verbose] show [-n] <name>
or: git remote prune [-n | --dry-run] <name>
or: git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]
or: git remote set-branches <name> [--add] <branch>...
or: git remote set-url <name> <newurl> [<oldurl>]
or: git remote set-url --add <name> <newurl>
or: git remote set-url --delete <name> <url>
-v, --verbose be verbose; must be placed before a subcommand
Если я введу $ git remote set-url git@github.com:mygithub/myapp.git
, я получу то же сообщение об ошибке, что и выше (минус ошибка origin). В любом случае, если я запускаю git push origin master
, он все равно толкает в старое хранилище. Я попробовал добавить новый репозиторий снова с тем же именем, но получил ошибку (чего я и ожидал), говорящую, что он уже существует.