这是一个新手Git问题,但我还没有找到一个可以让我清楚的stackoverflow的答案。
基本上,我正在计算机上的一个分支上工作:
$ git checkout -b my_branch
然后,我在文件中做了一些更改。然后,在my_branch中,我添加,提交并推送我编辑的文件。
然而,我决定将这些更改(分支的那些)放在主人身上。这就是问题所在。 我做了:
$ git checkout master
$ git merge my_branch
我的本地存储库上的一切都很好。但是当我访问我可以看到我的远程存储库的网站时,我的合并并不存在。 所以,我决定做一个简单的
$ git push
我的文件没有任何更改。
有效。那么,执行“空”推送是在存储库中查看我的本地合并的唯一方法吗?
谢谢
答案 0 :(得分:0)
您的Git存储库是本地的。远程存储库只是它的另一个副本。当您通过更改内容并运行git commit
或通过使用git merge
合并某些内容来添加提交时,这会在本地发生。没有任何东西通过网络发送。
通过网络发送数据的唯一时间是您明确运行git push
,git fetch
,git pull
等命令。
合并提交与任何其他提交类似。它只是将一行历史与另一行历史相结合的结果。因此,即使您没有编辑任何文件,合并提交通常也会导致文件更改。
如果有提交,则可以推送或提取。提交的类型无关紧要。
答案 1 :(得分:0)
很简单,当您在本地计算机上创建分支时,这些分支仅在本地计算机上,而不在远程仓库(即 Github 配置文件)上
所以你需要做的是,把它推送到你的 Github 仓库中。
例如
1.您创建了分支:
git checkout <BRANCH_NAME>
2.你合并它使用(要完成合并,你必须在你的主人或你想合并那个分支的地方),
git merge <BRANCH_NAME>
3.现在您需要使用以下命令将其推送到远程 Github 存储库,
git push
希望现在清楚了。
答案 2 :(得分:-1)
您可以查看是否对&#34; git status&#34;进行了更改。当你将my_branch与master合并时,你没有对代码进行任何更改......只是合并。
此外,如果你想确定你已经对你的在线存储库进行了所有更改,你可以进行git push --all,当然,正如我之前所说,用git status检查它们。