master中的本地未提交更改。需要切换到另一个分支

问题描述 投票:0回答:2

我是WebDev实习生,我在主分公司做了一些工作。我已经做了一个星期的工作而没有意识到我在主分公司。我需要切换分支,以便我可以从不是主分支的分支提交本地更改。我需要做什么:

  • 将我的主分支中的所有本地更改带到其他分支。
  • 从该分支提交更改。
  • 给你一个正确的答案验证。 :P

我经历了一些答案,但我不认为它们符合我的确切情况。提前致谢。 :)

git git-branch git-commit master
2个回答
2
投票

你要做的最简单的事情就是隐藏你的工作目录(如果你已经暂存了任何文件,可能是阶段),创建一个新的功能分支,然后在那里应用你的存储。

# from the master branch
git stash                      # stash your work
git checkout -b your_feature   # create and switch to a feature branch
git stash apply                # then apply your work to that branch

然后,您可以将您的工作提交到your_feature分支:

git add .
git commit -m 'Finished my work'

git stash命令通过两次(或有时三次)提交来完成,其中包含工作目录和阶段的内容。然后它会将master回滚到你第一次开始的地步。


0
投票

如果您已在本地将一些提交应用于主服务器。我将在这种情况下做的解决方案是:

1)首先创建一个新的分支,它将是master的副本。

git checkout -b new_branch master

2)现在将new_branch推送到远程(如果你想)

git push --set-upstream origin new_branch

3)现在去主人

git checkout master

4)现在转到日志,查看您要从master中删除的提交次数。

git log

让'N'成为你做过的提交次数。因此,要从master中删除这些提交,请使用以下命令:

git reset --hard HEAD~N

例如,您要删除最近的5次提交。所以,它将是:

git reset --hard HEAD~5

希望它会对你有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.