基本上如果我这样做:
git checkout -b some-branch
rails generate model some_model
git checkout master
即使现在我在掌握
,上面生成的相同文件也将在master中可用有什么理由吗?我想创建一个新的分支并创建新文件只会停留在那个分支中,而不是在master中创建。
Git config
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.symlinks=false
core.ignorecase=true
remote.origin.url=https://github.com/user/repo.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
答案 0 :(得分:3)
只要更改没有为提交暂存,它们就不是特定于一个分支。这意味着Git不会改变局部变化。
您有两种选择:
git commit
更改文件 - 现在git checkout master
之后更改仅包含some-branch
git stash
,移至主人,再次checkout some-branch
,git stash pop
更改。答案 1 :(得分:1)
在rails generate
之后,您没有将文件提交到some-branch
分支
在分支之间切换时,git不会更改本地修改的文件或新文件,除非存在冲突。 如果存在冲突,则不允许您更改分支,并建议您存储或提交更改。