2015-08-27 53 views
0

有人可以帮我找出我需要完成以下步骤:增加一个分支远程仓库和推 - 工作流程

一个分支添加到远程仓库中现有项目并提交和推到那个分支。

我出于某种原因,过于复杂的GIT,并且经历了艰难的时间寻找资源来帮助我弄清楚我想做什么。

我想通过终端完成此操作。

我会先连接到远程仓库,然后创建一个分支,然后在该分支上使用git init?

一旦我完成了某个实现,那么我会再次使用终端连接到该分支,'检出',提交并推送?从那时起,我所做的每一项改变都只是一次推动?

目前只有一个主分支,所以我希望我的本地项目实际包含来自该主分支的所有代码(无论如何,因为我分支了它),只需将我的更改推送到分支需要...

回答

0

只需推分支,它将在远程创建,如果它不存在。

例如:

git clone http://myRemoteRepo 
git checkout -b myNewBranch # Create a new local branch since it's what you seem to want 
#do some dev 
git commit -am "My awesome commit" 
git push origin myNewBranch # It will create myNewBranch in myRemoteRepo 

为了回答您的评论的问题:

  • 一旦你签出一个分支,只要你不签任何东西,你会留在那个分支上。您可以查看当前分支是使用git branch

  • 当我们使用git push origin myNewBranch我们实际上是说给混帐:“推到你所知道的‘出身’远程请问你从我的本地分支推“myNewBranch”,并推到远程分支“myNewBranch””

所以,这是不是你签出这对你推什么


的影响Ť母鸡git初始化该分支

请注意,这是没有意义的:你不git init分支:你初始化一个新的回购。然后你可以在这个仓库上创建分支。

更多,你通常只有init一次,在项目的最初。即:当你想在本地复制一个回购,那么,你只需克隆它,你不需要任何东西git init

+0

我从字面上方一开始并试图弄清楚我的思维过程是否有意义。虽然这可能会回答原来的问题,但我试图更多地了解事情的流程以及为达到期望的最终结果所采取的实际步骤。 –

+0

对我最后一段进行了编辑。我在这方面的错误,让我看起来像是想推给主人。 –

+0

假设我将为此项目使用xcode:我克隆了原始的repo并成功创建了一个名为BB的分支并检出到该分支。我是否简单地打开克隆的回购,开始在现有项目上做一些工作,并提交并推送我的更改?早些时候在终端上检查分支是否会继续作为偏好,意味着从此以后所有推送都会进入该分支?对不起,不断问,但你的答案正在帮助我接近! –

0
  1. 首先混帐克隆远程回购git clone XXXXX
  2. 得到你想要做的工作git reset --HARD <whereYouWantToStart>
  3. 可能使自己的分支点git checkout -b yourBranchName
  4. git的添加/混帐提交更改
  5. 无论是将你的工作合并回一些开发或主分支`git checkout master; git merge yourBranchName'
  6. 将结果推回git push origin master' or 'git push origin yourBranchName
+1

另外,在开始之前,您可能想阅读Git的参考资料。好消息是,有大量的免费教程,例如http://git-scm.com/book/en/v2/Getting-Started-About-Version-Control。坏消息是,你将不得不花费一些时间(可能每天1/2或阅读)来启动和了解更多。 – DavidN

+0

顺便说一句,Code School有一个免费的课程,名为“尝试Git”https://www.codeschool.com/courses/try-git让你了解基础知识。它可能是最简单的方法之一,以加快速度。另外,看起来他们也有一些关于付费的git眼镜。 – DavidN

0

如果你是唯一一个开发这一回购:要在当地发展

  1. 克隆回购。 git clone http://repoURL

  2. 创建一个新的分支(本地)进行更改。 git checkout -b newBranchName

  3. 在本地对文件进行更改。

  4. 将文件添加到提交更改列表。 git add file1 file2 fileEtc

  5. 本地提交更改。 git commit -a -m"Message explaining changed files, which will show up as part of commit on github after pushing."

  6. 推送您在github上的回购更改。 git push origin newBranchName

  7. 现在你将在github上有一个新的分支,当你准备好时你可​​以与你的主分支合并。

注意:在提交之前,您可以运行git status以查看未跟踪文件。您也可以输入git branch以查看您的所有分支机构以及您当前正在使用的分支机构。

要删除一个分支:(删除的时候不能在该分支)git -d branchName

切换分支(预先存在的分支中):git checkout branchName