2015-06-08 6 views
2

У меня есть проект на Github, и я начал немного другую его версию на другой ветке.Новый проект git из ветки?

Теперь я хочу разделить эту ветку на отдельный проект, который можно синхронизировать с исходным проектом, поэтому, когда я вношу некоторые изменения в исходный проект, я мог бы также потянуть их в новую ветку (но не другую наоборот).

Какова наилучшая процедура для этого?

Я мог бы, конечно, просто скопировать файлы ветвей в новую папку и инициализировать новое репо, а затем направить его в Github, но я уверен, что есть лучший способ сделать то, что я хочу, я просто не делаю ноу-хау ...

Спасибо!

+0

[This] (http://stackoverflow.com/questions/4414140/git-auto-pull-using-cronjob) может помочь вам в том, что вы ищете. – deepakb

+0

Спасибо, это интересно, но моя цель - не автоматически обновлять ветвь. Скорее, я хочу, чтобы это был самостоятельный отдельный проект, который может быть по-прежнему интегрирован с оригинальным, если возникнет такая необходимость. –

+0

github сам по себе не поддерживает это, но поскольку ветки просто указывают на фиксации, вы можете сделать это вручную ... создайте новый проект, клонируйте свой старый локально, переименуйте ветви, нажмите его на новый удаленный github –

ответ

4

Теперь я хочу, чтобы отделить эту ветвь в отдельный проект, который может быть синхронизирован с первоначальным проектом, поэтому, когда я делаю некоторые изменений в первоначальном проекте, я мог бы также вывести их на новый отрасли (но не наоборот).

  1. Создать новый проект в GitHub

  2. В существующем проекте, проверьте ветку интересов.

    git checkout mybranch 
    
  3. столкнуть ее в master отделение вашего нового проекта:

    git push [email protected]:username/project.git mybranch:master 
    

Теперь master ветвь нового проекта содержит историю mybranch в вашем проекте существует.

Чтобы сохранить новый репозиторий в синхронизации:

  1. Добавьте его в качестве нового «удаленного» в существующий репозиторий:

    git remote add otherproject [email protected]:username/project.git 
    
  2. При внесении изменений в mybranch, подтолкнуть их к master филиал otherproject:

    git push otherproject mybranch:master 
    
+0

Спасибо ! И как я тогда вытащу изменения из моего первоначального проекта в новый? –

+0

См. Мое обновление к этому ответу ... – larsks

+0

Благодарим вас за помощь! –

Смежные вопросы