更改分支后的Git状态

时间:2018-01-17 14:34:30

标签: git branch

最近我在一个名为" dev"的分支机构做了一些工作。并且需要开始一些新的举措,所以我创建并改为分支" dev-crud"在确保所有内容都是最新的" dev"在离开之前 - 即,git状态显示我是最新的,没有列出任何项目。在" dev-crud"做了一些工作之后我没有做任何事情,我转而回到" dev"并且惊讶地发现它在" dev-crud"中意识到我的工作,即:

$ git checkout dev
M   MDSCommitteeWS.iml
M   pom.xml
M   src/main/webapp/WEB-INF/web.xml
A   src/main/webapp/edu/mayo/crud/Committee.java
A   src/main/webapp/edu/mayo/crud/CommitteeCrud.java
A   src/main/webapp/edu/mayo/crud/UtilityCrud.java
M   src/main/webapp/edu/mayo/dbconnection/WSAction.java

Switched to branch 'dev'
Your branch is up-to-date with 'origin/dev'.

所以在" dev"当我决定在" dev?"中添加我的所有更改时,这些文件是否也将被添加?我是否应该在" dev-crud"在切换回" dev?"之前在这个时间点,我的目的是让他们成为两个独立的发展路线。谢谢!

1 个答案:

答案 0 :(得分:0)

是的,如果你只是在git add . && git commit中运行dev,就会添加和提交它们。

虽然在切换到git add之前可以git commitdev,但这些更改不会应用于devgit stash dev-crub 1}}更好。它使工作树保持干净并存储更改。如果您希望在返回dev-crub后重新获得这些更改,请运行git stash apply(保留最后一个存储)或git stash pop(删除最后一个存储)以恢复更改。< / p>

Git还允许您将两个或多个分支签出到单个文件夹中,因此您不必在同一目录中来回切换。在git worktree的帮助下,您可以节省很多。

git worktree add <some-other-path> dev

如果some-other-path不存在,则会创建dev,并在那里检查some-other-path的代码。您可以在dev中运行git命令来操作git worktree。 {{1}}是一个相对较新的功能,因此旧版本的Git不支持它。