git子树失败,疯狂输出

时间:2013-08-07 21:10:30

标签: git git-push subtree

我按照这里的说明创建了一个git子树 -     https://help.github.com/articles/working-with-subtree-merge

也许不幸的是,我对包含子树的存储库进行了正常的TortoiseGit推送。出于某种原因,来自子树的更改文件列在TortoiseGit的更改列表中(它被合法地更改,顺便说一句),所以我想“哦!整洁!TortoiseGit自动支持子树!”,所以我继续并承诺并做了一个正常的TortoiseGit推。

然后为了测试TortoiseGit做了我的想法,我得到了子树所在的存储库的克隆,然后拉了。可悲的是,我没有从我认为我推入TortoiseGit的子树中得到改变......

所以现在我不确定发生了什么,所以我求助于安装git-subtree并尝试在子树上使用push命令的不同变体,直到看起来有效 -

git subtree push --prefix=prime origin/prime prime/master
git subtree push --prefix=prime prime prime/master
git subtree push --prefix=prime/ -u prime/master
git subtree push --prefix=prime/ prime/master
git subtree push --prefix=prime/ prime prime/master
git subtree push --prefix=prime/ https://github.com/bryanedds/prime.git prime/master
git subtree push --prefix=prime/ https://github.com/bryanedds/prime.git master

我应该知道的不仅仅是猜测,因为我认为其中一条线意外地推了一个新的分支或者其他东西,现在可能导致与这个问题相关的问题......

尽管如此,我继续说,试着按照我在网上其他地方找到的指示来确保我做的事情还好 -

git subtree pull -P prime https://github.com/bryanedds/prime.git master

这似乎有效。但仍然不确定我是否正确推动,我根据我发现的新页面再次尝试推 -     git subree push -P prime https://github.com/bryanedds/prime.git master

它给了我各种带有拒绝错误的疯狂输出 -

git push using:  https://github.com/bryanedds/prime.git master
1/    287 (0)2/    287 (1)3/    287 (2)4/    287 (3)5/    287 (4)6/    287 (5)7/
    287 (6)8/    287 (7)9/    287 (8)10/    287 (9)11/    287 (10)12/    287 (11
)13/    287 (12)14/    287 (13)15/    287 (14)16/    287 (15)17/    287 (16)18/
   287 (17)19/    287 (18)20/    287 (19)21/    287 (20)22/    287 (21)23/    28
7 (22)24/    287 (23)25/    287 (24)26/    287 (25)27/    287 (26)28/    287 (27
)29/    287 (28)30/    287 (29)31/    287 (30)32/    287 (31)33/    287 (32)34/
   287 (33)35/    287 (34)36/    287 (35)37/    287 (36)38/    287 (37)39/    28
7 (38)40/    287 (39)41/    287 (40)42/    287 (41)43/    287 (42)44/    287 (43
)45/    287 (44)46/    287 (45)47/    287 (46)48/    287 (47)49/    287 (48)50/
   287 (49)51/    287 (50)52/    287 (51)53/    287 (52)54/    287 (53)55/    28
7 (54)56/    287 (55)57/    287 (56)58/    287 (57)59/    287 (58)60/    287 (59
)61/    287 (60)62/    287 (61)63/    287 (62)64/    287 (63)65/    287 (64)66/
   287 (65)67/    287 (66)68/    287 (67)69/    287 (68)70/    287 (69)71/    28
7 (70)72/    287 (71)73/    287 (72)74/    287 (73)75/    287 (74)76/    287 (75
)77/    287 (76)78/    287 (77)79/    287 (78)80/    287 (79)81/    287 (80)82/
   287 (81)83/    287 (82)84/    287 (83)85/    287 (84)86/    287 (85)87/    28
7 (86)88/    287 (87)89/    287 (88)90/    287 (89)91/    287 (90)92/    287 (91
)93/    287 (92)94/    287 (93)95/    287 (94)96/    287 (95)97/    287 (96)98/
   287 (97)99/    287 (98)100/    287 (99)101/    287 (100)102/    287 (101)103/
    287 (102)104/    287 (103)105/    287 (104)106/    287 (105)107/    287 (106
)108/    287 (107)109/    287 (108)110/    287 (109)111/    287 (110)112/    287
 (111)113/    287 (112)114/    287 (113)115/    287 (114)116/    287 (115)117/
  287 (116)118/    287 (117)119/    287 (118)120/    287 (119)121/    287 (120)1
22/    287 (121)123/    287 (122)124/    287 (123)125/    287 (124)126/    287 (
125)127/    287 (126)128/    287 (127)129/    287 (128)130/    287 (129)131/
287 (130)132/    287 (131)133/    287 (132)134/    287 (133)135/    287 (134)136
/    287 (135)137/    287 (136)138/    287 (137)139/    287 (138)140/    287 (13
9)141/    287 (140)142/    287 (141)143/    287 (142)144/    287 (143)145/    28
7 (144)146/    287 (145)147/    287 (146)148/    287 (147)149/    287 (148)150/
   287 (149)151/    287 (150)152/    287 (151)153/    287 (152)154/    287 (153)
155/    287 (154)156/    287 (155)157/    287 (156)158/    287 (157)159/    287
(158)160/    287 (159)161/    287 (160)162/    287 (161)163/    287 (162)164/
 287 (163)165/    287 (164)166/    287 (165)167/    287 (166)168/    287 (167)16
9/    287 (168)170/    287 (169)171/    287 (170)172/    287 (171)173/    287 (1
72)174/    287 (173)175/    287 (174)176/    287 (175)177/    287 (176)178/    2
87 (177)179/    287 (178)180/    287 (179)181/    287 (180)182/    287 (181)183/
    287 (182)184/    287 (183)185/    287 (184)186/    287 (185)187/    287 (186
)188/    287 (187)189/    287 (188)190/    287 (189)191/    287 (190)192/    287
 (191)193/    287 (192)194/    287 (193)195/    287 (194)196/    287 (195)197/
  287 (196)198/    287 (197)199/    287 (198)200/    287 (199)201/    287 (200)2
02/    287 (201)203/    287 (202)204/    287 (203)205/    287 (204)206/    287 (
205)207/    287 (206)208/    287 (207)209/    287 (208)210/    287 (209)211/
287 (210)212/    287 (211)213/    287 (212)214/    287 (213)215/    287 (214)216
/    287 (215)217/    287 (216)218/    287 (217)219/    287 (218)220/    287 (21
9)221/    287 (220)222/    287 (221)223/    287 (222)224/    287 (223)225/    28
7 (224)226/    287 (225)227/    287 (226)228/    287 (227)229/    287 (228)230/
   287 (229)231/    287 (230)232/    287 (231)233/    287 (232)234/    287 (233)
235/    287 (234)236/    287 (235)237/    287 (236)238/    287 (237)239/    287
(238)240/    287 (239)241/    287 (240)242/    287 (241)243/    287 (242)244/
 287 (243)245/    287 (244)246/    287 (245)247/    287 (246)248/    287 (247)24
9/    287 (248)250/    287 (249)251/    287 (250)252/    287 (251)253/    287 (2
52)254/    287 (253)255/    287 (254)256/    287 (255)257/    287 (256)258/    2
87 (257)259/    287 (258)260/    287 (259)261/    287 (260)262/    287 (261)263/
    287 (262)264/    287 (263)265/    287 (264)266/    287 (265)267/    287 (266
)268/    287 (267)269/    287 (268)270/    287 (269)271/    287 (270)272/    287
 (271)273/    287 (272)274/    287 (273)275/    287 (274)276/    287 (275)277/
  287 (276)278/    287 (277)279/    287 (278)280/    287 (279)281/    287 (280)2
82/    287 (281)283/    287 (282)284/    287 (283)285/    287 (284)286/    287 (
285)287/    287 (286)Username for 'https://github.com': bryanedds
Password for 'https://bryanedds@github.com':
To https://github.com/bryanedds/prime.git
 ! [rejected]        f9376cdb70e9217ff005abedb3009e3db293f5dc -> master (non-fas
t-forward)
error: failed to push some refs to 'https://github.com/bryanedds/prime.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

我再次尝试拉,但无济于事。而且,重要的是,所有的数字,parens和斜杠是什么???我现在完全陷入困境和迷失,这可能是我的笨手笨脚,所以我真诚地感谢你对此事的帮助!

最后,我可能已经做了其他不好的事情,同时深入挖掘这个漏洞......我希望我能记录下我所做的一切,但是CMD并不认为任何人都需要了解更多他们的会议线........> :(

2 个答案:

答案 0 :(得分:4)

您提供的链接是关于子树合并的,不要与git subtree命令混淆,后者是git扩展的一部分。

如果您执行git branch并且除了父项目的prime分支外,您可以看到本地master分支,那么您可以执行

git subtree split --prefix=prime --onto prime --branch prime

然后使用

推送到prime存储库

git push -f prime prime:master

如果您没有在本地看到prime分支,那么您可以通过git subtree进行新的分割

git subtree split --prefix=prime --branch prime

它将创建一个名为prime的新挂起分支,可以跟踪您的远程prime存储库。要更新prime远程存储库,您可以执行

git push -f prime prime:master

答案 1 :(得分:0)

在尝试推送我在子树中所做的更改时遇到了同样的问题。我使用git bash完成了所有设置,但在尝试将子树推送到遥控器时获得了相同类型的输出。

解决方案是将git更新为最新版本a https://git-scm.com/downloads

之后,以前失败的命令现在有效:

 git subtree push --prefix=DIR_PATH REMOTE_NAME master