请教一下,是谁把代码合丢了

2022-07-20 16:25:36 +08:00
 magic3584

请教各位大佬,是谁把代码给合丢了,如下图,黄色为 master:

我的猜测是 B 在合并的时候给合没了,但是有个疑问就是 B 合并的时候应该会有冲突的而不是 fast forward 的吧?最开始我只看 master 的提交以为是 A 合没了。

请大佬指点

  1. 到底是谁给合没了
  2. 这个图看着确实不知道怎么去找是谁?请问是否有更清晰的图?
  3. 为什么 A 会从 B 的分支上合并到 master
10823 次点击
所在节点    git
68 条回复
gam2046
2022-07-20 16:29:23 +08:00
看丢失文件的 git log 是在哪次 commit 中被删除的。看这个图能看出什么呢。
skaly
2022-07-20 16:34:45 +08:00
找到分支上看合并后的代码,就知道是谁合并掉的
leavic
2022-07-20 16:52:11 +08:00
3B 的时候代码就没了,然后 4A merge 的时候没审核呗。
wolfie
2022-07-20 17:08:34 +08:00
JB 家的
1. 文件 show history
2. 文件内某个段落 show history for selection
lanceli
2022-07-20 17:13:49 +08:00
同遇到过
merge 时丢弃掉的,show history 里面没有记录,尴尬
JasonLaw
2022-07-20 17:18:41 +08:00
听不懂😅 不会只有我一个人吧?
topsy
2022-07-20 17:26:39 +08:00
猜测
1A ,2A 代码正常的话,就是 3B 合并代码导致的代码丢失,所以 4A 合 3B 的时候也丢失了
HannibaI
2022-07-20 17:29:48 +08:00
3B 处理冲突时,把代码搞丢了,这就形成了一个「删除某些代码」的 commit ,这个 commit 周围在 A 上面没人再修改过了,那 3B 合并到 A 的时候,自然而然就把 A 上相应代码也删除了。
HannibaI
2022-07-20 17:30:32 +08:00
> A 会从 B 的分支上合并到 master
NoKey
2022-07-20 17:31:05 +08:00
@lanceli 总会有记录可查吧
HannibaI
2022-07-20 17:31:29 +08:00
这是你们分支管理混乱造成的
4771314
2022-07-20 17:33:47 +08:00
看每次 merge 的改动就可以了,看这个 graph 没有太大的用
magic3584
2022-07-20 17:36:49 +08:00
@gam2046 #1
大佬,git log 是人为打上的,这个怎么能看到代码是在哪丢的呢?
rbe
2022-07-20 17:36:51 +08:00
尝试下 git bisect 二分查找,看丢失的代码在哪一个 commit 里
magic3584
2022-07-20 17:37:54 +08:00
@wolfie #4
@lanceli #5
我用的 fork ,show history 应该只能显示当前分支的历史。我是想找出谁给合没的
magic3584
2022-07-20 17:38:53 +08:00
@HannibaI #11
每个人有个开发分支,然后都往 master 上合。不知道您说的分支管理是指的什么?所有人都在 dev 上吗?
lokya
2022-07-20 17:39:48 +08:00
merge 的时候看到不是自己的 估计给舍弃了
magic3584
2022-07-20 17:40:03 +08:00
@4771314 #12

@rbe #14
看提交是 3B 就没了,merge 到 master 是 4A 没有了,所以我搞不懂到底是谁搞没的
magic3584
2022-07-20 17:41:42 +08:00
@lanceli #5
我这已经是第二次被合丢代码了,测试找过来的时候我清楚记得自己是写过的。。。
m1ng
2022-07-20 17:43:13 +08:00
git log -p <你要查看的文件路径> 可以查看文件的修改历史

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

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

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

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

© 2021 V2EX