我有两个的Git分支,A和B.我使用Git部署从服务器1到服务器更改2.混帐不响应分支修改
科A的文件集数。分支B有一个额外的目录(foo),其中包含更多文件,并且对额外目录之外的其中一个文件(bar)进行更改。我有本地分支和远程分支源/ A。分支B和分支起点/ B也一样。
在服务器1上,如果我检出分支A,我在bar中看到原始内容,并且没有看到额外的目录foo。如果我签出分支B栏更改和额外目录,则会出现foo。
太好了。服务器1工作。
问题出在服务器2上。如果我签出分支条更改,但额外的目录条不会像在服务器1上那样消失。在服务器2上,如果我更改为分支B条,也会更改额外的目录,foo仍然存在。总而言之,当我通过git部署到服务器2时,只会发生文件内的更改,并且不会发生文件的添加/删除操作。
这是git的正常行为还是应该当我检出分支A时文件消失?
感谢
是否对服务器1上的所有更改进行了提交和推送?你有没有在服务器2上执行git pull? –
我做了一次抓取和结帐,但是当我在结账分支B后做了一次拉取后,我得到:$ git pull 当前分支没有跟踪信息。 请指定您想要合并的分支。 详见混帐式(1) 混帐拉 如果要设置这个分支跟踪信息你可以这样做: 混帐分支--set-上游到原点=/ b –
splunge
您使用了“部署”这个词:根据我的经验,很多时候人们说“部署[在服务器上]”,他们暗示服务器上的存储库是用'--bare'创建的,而且有一个post-receive钩子,在服务器上做一些特殊的事情。然而,你接着说话,就好像你登录到服务器并在那里做普通的工作树命令,就好像它不是一个''''''''''''''版本库。所以,我不确定你的实际设置是什么。如果您显示了创建这些存储库并且您现在正在使用的全部命令序列,则可能会有所帮助。 – torek