菜鸟请教几个 git 相关的问题

2022-08-05 12:53:47 +08:00
 hellsnow
1.合并代码
我在 A 分支上,想把 A 合并到 B 上,操作时
git checkout B
git pull
git merge A
git push
这样做对吗,这样子操作之后 A 和 B 的代码是不是一样的,即 A 不是未合并之前的代码了
2.我用 idea 修改了某个文件夹的名字,推到了 A 分支上,合并到了 B 上,B 上的代码看也是改过了,但是别人拉 B 的代码还是未改过之前的,这个我应该怎么做呢
1744 次点击
所在节点    程序员
7 条回复
yiXu
2022-08-05 13:11:26 +08:00
如果运行,给出操作过程中的反馈信息,或者自己建一个实验仓库测试,给出操作反馈信息。

问题可能在于你 A 是否提交 commit 了,如果 A 和 B head 的 commit 不一样应该会 merge 的感觉
Rache1
2022-08-05 13:33:36 +08:00
1 、不一定,如果 B 分支上有自身的修改,那自然 B 分支和 A 分支 “不是完全一样的”

2 、如果你只是修改文件夹的大小写,默认 git 应该是会忽略掉的,所以可能会造成这种情况,又或者,因为别人拉的时候,当前工作区阻止🚫了 pull ,因为不能自动合并,实际上时没有拉下来的
857681664
2022-08-05 14:03:33 +08:00
1. 你只是把 A 的代码合并进来了,所以 B 会有 A 的所有代码,2 个分支不一定一样。
2. 你是不是没有推送提交到 B 分支,在合并 A 之后需要 push origin B 后,其他人才能拉到改动。
Vfei2017
2022-08-05 14:16:30 +08:00
你只改文件名 git 是 diff 不到的,你可以看下远程仓库 b 分支上文件名有没有变化(远程上 b 应该变化)
Moha
2022-08-05 14:52:45 +08:00
1. 不是,你 pull 后更新了 B ,然后由合并了 A ,你的 B 分支是最新的,但 A 分支还是你合并前的样子,你推送上去的是更新的 B ;
2. 你在 A 分支,更新了文件夹,你想更新远程 A ,就推送到远程 A 。如果你想把 A 的变化更新到 B ,那你先把 A 的提交合并到 B ,然后把 B 推送到远程 B ,那么远程 B 就是最新的;
Ayanee
2022-08-05 23:37:41 +08:00
1. 假设当前处于 A
$ git fetch --all
$ git pull
$ git checkout B
$ git pull
$ git merge A
$ git push

2.检查一下远程仓库的提交 file changes
Ayanee
2022-08-05 23:42:57 +08:00
1 没审题清楚,订正:
你做的操作是把 A 合并到 B ,改变的是 B ,A 本身是没有改变的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/870863

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX