我是使用Visual Studio的团队的一员,使用Visual Studio team Services (是Visual Studio Online)提供的git。我们正在使用功能分支,并在完成工作时合并到一个中心分支中。
我目前在feature分支上的工作是以不完整的状态提交的,我的一个同事正在做单独的工作(我的工作是C#/.net,他们的工作是web/UI),他在visual studio中做了一个临时的(未提交的)合并,以便检查我们的工作是否可以正确地集成。
他们的工作已经提交到我们的中心分支,合并显然还没有完成,当我将更新从中心分支拉到我的feature分支时,我在此feature
使用git status --porcelain <file>,我可以检查一个文件是否被修改、删除、添加、.
如果文件是在本地修改和提交的,则git status --porcelain <file>不返回任何值。
使用git status <file>,我知道整个回购都是x提交,但这是整个回购,而不仅仅是一个文件。
如果一个文件已提交但未被推送,我如何检查它。
(恐怕我的搜索不足,我没有找到这个特定场景的答案)
所以,我有一个像这样的git回购:
A a'', b''
|
/
M a',b'
|
|
|
o a, b
|
M是当前的master,A是主题分支。o是一个旧的提交,a,b, etc指的是回购中两组特定文件的状态。
我已经意识到我想把master及时移回提交o (a文件),除了在主题分支A中创建/修改的一些特定文件(b'')。换句话说,我希望新主人看起来像这样:
M' a, b''
|
做这件事最好的方法是什么?
(我可以做的
在提出问题之前,我想知道我对Git概念的理解是否正确,请随时纠正我:
分支名称指向分支的提示(即结束提交),以及
头指向当前分支的分支名称,以及
当前分支被定义为签出到工作目录中的分支。
以下是我的问题:
当通过git命令将新提交添加到分支时(任何可以将提交添加到分支的git命令),
问题:
git命令是否总是将分支名称向前移动以指向新提交?还是有git命令将新提交添加到分支,这些命令不移动分支名称,因此需要运行其他git命令来移动它?
什么时候
- a new commit is added to **the current branch** by a g
我是一个新的git用户。我正在与我的团队在一个laravel应用程序项目。首先,我在本地机器上克隆了这个项目。然后我做了些改变。我已经读写了Bitbucket中的团队存储库,在这里,主分支旁边有一个分支“我的分支”。我不得不把我的改变提交给我的分支。为了致力于我的事业,我用
git checkout mybranch
然后我收到了以下消息
error: Your local changes to the following files would be overwritten by checkou t: resources/views/aview.blade.php Please commit