То, что вы просите, вполне разумно. Это стандартный рабочий процесс в программном обеспечении с открытым исходным кодом, когда хранилище разветвляется, поэтому у вас есть два удаленных хранилища: одно, которое принадлежит вам (origin
), и другое, которым владеет кто-то другой (upstream
).
Рабочий процесс может выглядеть примерно так:
# Clone down the Marlin repository
git clone https://github.com/person/marlin.git
# Move into the repository's directory
cd marlin
# List your current remotes
git remote -v
### Example output:
### origin https://github.com/person/marlin.git (fetch)
### origin https://github.com/person/marlin.git (push)
Как видите, теперь у вас есть один пульт, называемый "источник". Но это тот, который принадлежит кому-то другому, поэтому давайте назовем его «upstream», как это классическое имя
# Rename the "origin" remote to "upstream"
git remote rename origin upstream
Теперь вы должны пойти на свой сервер и создать репозиторий, а затем получить URL-адрес клона. Получив этот URL, вы можете добавить его в качестве второго пульта, например:
# Add a second remote to your repository
git remote add origin https://example.com/foo/marlin.git
И, наконец, подтолкнуть любые ветви, которые вы хотите, к репо-источнику, которым вы владеете
# Push the master branch to the repo you owns
git push origin master