Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 根据以前提交中所做的更改创建新提交_Git - Fatal编程技术网

Git 根据以前提交中所做的更改创建新提交

Git 根据以前提交中所做的更改创建新提交,git,Git,我正在开发一个应用程序,今天早上当我提取新代码时,我发现该应用程序不工作,因此,我进行了一次git签出,以转到上一次提交 现在我对这个提交做了一些更改,我想用这些更改创建一个新的提交 这可能吗?如果没有,请提出实现目标的方法。是的,这是很有可能的 git checkout branch_Id // previous commit git checkout -b new branch name // Create branch at current position git add .//make

我正在开发一个应用程序,今天早上当我提取新代码时,我发现该应用程序不工作,因此,我进行了一次
git签出
,以转到上一次提交

现在我对这个提交做了一些更改,我想用这些更改创建一个新的提交


这可能吗?如果没有,请提出实现目标的方法。

是的,这是很有可能的

git checkout branch_Id // previous commit
git checkout -b new branch name // Create branch at current position
git add .//make change and add

git commit -m 'your commit statement'

git checkout master 

git merge new branch name

是的,这是很有可能的

git checkout branch_Id // previous commit
git checkout -b new branch name // Create branch at current position
git add .//make change and add

git commit -m 'your commit statement'

git checkout master 

git merge new branch name

假设你的分支是主分支

git checkout f95ecfe // previous commit
git checkout -b bug_fix // Create branch at current possition
git add -A //make change and add
git commit -m 'commit message'
git checkout master 
git merge bug_fix

如果您的分支是master,希望这对您有所帮助

git checkout f95ecfe // previous commit
git checkout -b bug_fix // Create branch at current possition
git add -A //make change and add
git commit -m 'commit message'
git checkout master 
git merge bug_fix

希望这对您有所帮助

假设您以前做过
git checkout abcdef
并进行了更改;现在你可以:

git checkout -b foo
它不会对源文件进行任何更改,只会创建一个新的分支名称
foo


然后执行通常的
git add
git commit
命令来提交更改。

假设您以前执行过
git checkout abcdef
并进行了更改;现在你可以:

git checkout -b foo
它不会对源文件进行任何更改,只会创建一个新的分支名称
foo


然后执行通常的
git add
git commit
命令来提交更改;git提交。在提交之前,索引和工作树中的更改一直保持不变。如果您的工作与新签出之间存在冲突,请使用git checkout-m master解决冲突,然后使用git commit解决冲突;git提交。在提交之前,索引和工作树中的更改一直保持不变。如果您的工作和新签出之间存在冲突更改,请使用git checkout-m master解决冲突,然后使用git commit

创建指向提交的指针。否则,没有sha裁判就无法到达。我认为这不会起作用。
git
如何知道我们需要最新的提交?那么,在我目前正在处理的提交之后,由于其他人的提交而可能发生更改的文件呢?@arjunpraicker您最终得到了两个分支,它们在您签出的地方分裂开来。一个分支拥有您的更改,另一个分支拥有其他人所做的更改。如果这不是你的目标,那么我建议编辑你的问题,解释你所说的“目标”是什么意思。你仍然需要创建一个指向提交的指针。否则,没有sha裁判就无法到达。我认为这不会起作用。
git
如何知道我们需要最新的提交?那么,在我目前正在处理的提交之后,由于其他人的提交而可能发生更改的文件呢?@arjunpraicker您最终得到了两个分支,它们在您签出的地方分裂开来。一个分支拥有您的更改,另一个分支拥有其他人所做的更改。如果这不是你的目标,那么我建议编辑你的问题,解释你所说的“目标”是什么意思。好的。但是我已经对之前的提交做了更改(引用您的示例:
f95ecfe
)。这个方法仍然有效吗?你已经提交了更改吗?没有。还没有。我必须在15分钟左右完成。好的,没问题,按照同样的步骤进行。首先从commit.ok签出到新分支。但是我已经对之前的提交做了更改(引用您的示例:
f95ecfe
)。这个方法仍然有效吗?你已经提交了更改吗?没有。还没有。我必须在15分钟左右完成。好的,没问题,按照同样的步骤进行。首先从提交中签出到新分支。您所说的“我已对此提交进行了一些更改”是什么意思?您是否在git签出后提交了任何更改?或者您只是编辑了本地副本?您所说的“我已对此提交进行了一些更改”是什么意思?您是否在git签出后提交了任何更改?还是只编辑了本地副本?