设置git以便于使用

时间:2015-11-12 07:18:23

标签: git svn

我已经使用SVN多年了,最后我将切换到git。我不明白如何进行简单的更改,文档对我来说有点混乱。

我在一个名为dev /的文件夹中设置了一个存储库,我希望有另一个名为live /的文件夹,我可以更新我所做的任何提交。

在SVN,我会这样做:

svn commit dev/index.php -m "changing something"
svn up live/index.php

在git中我已经设置了dev /,现在我该如何制作/?它是克隆人吗?拉?最简单的方法是什么?

2 个答案:

答案 0 :(得分:3)

你可以查看一些教程,但作为一个曾与SVN合作多年的人,我知道这可能有点令人困惑。

您需要掌握几个关键概念。

  1. 有一个工作区,基本上是您处理文件的位置。这是您在本地文件系统上进行所有更改的地方。当你喜欢自己所做的事情时,是时候进入下一步了。
  2. 最大的区别之一是您的机器上有一个LOCAL REPO。下一步是实际"添加"您对LOCAL REPO的更改。这是通过" git add"命令。注意:您需要拨打"添加"对于您已更改的每个文件 - 即使它是现有文件。 (与SVN不同的是,您只需添加新文件。)Git认为这是将文件添加到" staging" (你当地的回购)。
  3. 当你喜欢你所做的事情时,你可以做一个" git commit"这实际上标记了您在本地仓库中作为历史记录所做的所有更改。整个想法是“添加'只是表示要git来监视更改,而commit表示您已完成对这些文件的更改。
  4. 最后,当您准备好将更改实际同步到远程服务器仓库时,您可以使用" git push"实际将其提交到远程服务器仓库。
  5. 因此,在您的情况下,您将要完成上述3个步骤。首先创建您的目录。然后做" git add"到你当地的回购。此时,您可以开始使用它在工作区中的该文件夹中添加更多文件。做更多" git add"对于您创建的新文件。如果您满意,请执行您的" git commit"致力于当地的回购。然后,您可以使用" git push"。

    推送到服务器仓库

    我需要花一点时间来围绕这个,就像我说的那样 - 但是当你进入它时它会开始感觉更自然。整个本地回购的东西真的很棒,能够脱机工作。它也感觉像更多的命令 - 但它们都有逻辑上的原因。没有更多的SVN提交,然后" oops我忘了添加这个"第二次提交 - 所有这些都是因为你可以使用" git add"来处理这些事情。并仔细检查。

    快乐的小道!

答案 1 :(得分:1)

您可以克隆dev

cd /path/to/parent/of/dev
git clone dev live

devlive代表同一分支上的相同Git仓库(默认为主仓)。

由于dev纯粹是一个本地仓库,因此一旦您提交dev,您就需要去生活git pull

另一种方法是将live视为dev upstream repo

git init live
git clone live dev
cd dev
# work
git add . && git commit -m "message"
git push -u origin master

然后,您就可以直接将提交从dev推送到live