使用git推送特定提交(与ClearCase相比)

时间:2012-07-24 08:37:09

标签: git version-control clearcase dvcs

我们目前正在使用ClearCase来管理我们的源代码。

使用ClearCase,我习惯于进行一些更改,并能够以任何我想要的方式将这些更改提交(签入)到服务器。

这也意味着我可以编辑(签出和修改)10个不同的文件,但只能将其中一些文件检入服务器,并按我想要的任何顺序。

使用git,在本地提交会迫使我按特定顺序将更改推送回服务器。

Git中是否有任何工作流程,类似于我习惯使用ClearCase的工作流程? (能够在没有大量工作的情况下将我的一些本地提交仅推送到服务器)。

2 个答案:

答案 0 :(得分:1)

除了向索引添加文件(允许您只提取所需的文件)之外,您还可以:

  • 将文件的交互式部分添加到索引中(意味着如果需要,您只能推送部分文件:使用ClearCase无法执行此操作)
  • 在您的文件被修改的任何位置藏匿,以刷新您的工作区(git pull),然后将这些更改重新应用到您的工作树。
    这比在ClearCase中更容易,ClearCase在刷新视图时不会修改当前签出的文件(例如在快照视图中更新)。

答案 1 :(得分:0)

回复:

  

这也意味着我可以编辑(签出和修改)10个不同的文件,但只能将其中一些文件检入服务器,并按我想要的任何顺序。

你可以提交你想要的文件:

>git status
# on branch xxx
# Changes not staged for commit
#    file1
#    file2
#    file3

>git add file1 file3
>git commit -m "Commited file1 and file3"

>git status
# on branch xxx
# Changes not staged for commit
#    file2