/
usr
/
share
/
doc
/
git
/
RelNotes
/
/usr/share/doc/git/RelNotes
mkdir
upload
Name
Size
Mode
Actions
1.5.0.1.txt
1255
0644
edit
dl
rm
1.5.0.2.txt
2308
0644
edit
dl
rm
1.5.0.3.txt
1577
0644
edit
dl
rm
1.5.0.4.txt
462
0644
edit
dl
rm
1.5.0.5.txt
609
0644
edit
dl
rm
1.5.0.6.txt
484
0644
edit
dl
rm
1.5.0.7.txt
482
0644
edit
dl
rm
1.5.0.txt
18638
0644
edit
dl
rm
1.5.1.1.txt
2164
0644
edit
dl
rm
1.5.1.2.txt
1651
0644
edit
dl
rm
1.5.1.3.txt
1566
0644
edit
dl
rm
1.5.1.4.txt
843
0644
edit
dl
rm
1.5.1.5.txt
1430
0644
edit
dl
rm
1.5.1.6.txt
1519
0644
edit
dl
rm
1.5.1.txt
13288
0644
edit
dl
rm
1.5.2.1.txt
1457
0644
edit
dl
rm
1.5.2.2.txt
2086
0644
edit
dl
rm
1.5.2.3.txt
796
0644
edit
dl
rm
1.5.2.4.txt
802
0644
edit
dl
rm
1.5.2.5.txt
928
0644
edit
dl
rm
1.5.2.txt
7355
0644
edit
dl
rm
1.5.3.1.txt
326
0644
edit
dl
rm
1.5.3.2.txt
1931
0644
edit
dl
rm
1.5.3.3.txt
896
0644
edit
dl
rm
1.5.3.4.txt
1208
0644
edit
dl
rm
1.5.3.5.txt
3376
0644
edit
dl
rm
1.5.3.6.txt
1432
0644
edit
dl
rm
1.5.3.7.txt
1584
0644
edit
dl
rm
1.5.3.8.txt
783
0644
edit
dl
rm
1.5.3.txt
14030
0644
edit
dl
rm
1.5.4.1.txt
524
0644
edit
dl
rm
1.5.4.2.txt
1530
0644
edit
dl
rm
1.5.4.3.txt
997
0644
edit
dl
rm
1.5.4.4.txt
2617
0644
edit
dl
rm
1.5.4.5.txt
2241
0644
edit
dl
rm
1.5.4.6.txt
1440
0644
edit
dl
rm
1.5.4.7.txt
342
0644
edit
dl
rm
1.5.4.txt
14424
0644
edit
dl
rm
1.5.5.1.txt
1499
0644
edit
dl
rm
1.5.5.2.txt
772
0644
edit
dl
rm
1.5.5.3.txt
305
0644
edit
dl
rm
1.5.5.4.txt
140
0644
edit
dl
rm
1.5.5.5.txt
449
0644
edit
dl
rm
1.5.5.6.txt
342
0644
edit
dl
rm
1.5.5.txt
7596
0644
edit
dl
rm
1.5.6.1.txt
793
0644
edit
dl
rm
1.5.6.2.txt
1457
0644
edit
dl
rm
1.5.6.3.txt
2113
0644
edit
dl
rm
1.5.6.4.txt
1573
0644
edit
dl
rm
1.5.6.5.txt
1041
0644
edit
dl
rm
1.5.6.6.txt
342
0644
edit
dl
rm
1.5.6.txt
3843
0644
edit
dl
rm
1.6.0.1.txt
1188
0644
edit
dl
rm
1.6.0.2.txt
2840
0644
edit
dl
rm
1.6.0.3.txt
4315
0644
edit
dl
rm
1.6.0.4.txt
1293
0644
edit
dl
rm
1.6.0.5.txt
2014
0644
edit
dl
rm
1.6.0.6.txt
1193
0644
edit
dl
rm
1.6.0.txt
10049
0644
edit
dl
rm
1.6.1.1.txt
1976
0644
edit
dl
rm
1.6.1.2.txt
1640
0644
edit
dl
rm
1.6.1.3.txt
847
0644
edit
dl
rm
1.6.1.4.txt
1593
0644
edit
dl
rm
1.6.1.txt
10322
0644
edit
dl
rm
1.6.2.1.txt
597
0644
edit
dl
rm
1.6.2.2.txt
1508
0644
edit
dl
rm
1.6.2.3.txt
781
0644
edit
dl
rm
1.6.2.4.txt
1351
0644
edit
dl
rm
1.6.2.5.txt
688
0644
edit
dl
rm
1.6.2.txt
5888
0644
edit
dl
rm
1.6.3.1.txt
343
0644
edit
dl
rm
1.6.3.2.txt
2271
0644
edit
dl
rm
1.6.3.3.txt
1379
0644
edit
dl
rm
1.6.3.4.txt
1206
0644
edit
dl
rm
1.6.3.txt
6787
0644
edit
dl
rm
1.6.4.1.txt
1906
0644
edit
dl
rm
1.6.4.2.txt
1210
0644
edit
dl
rm
1.6.4.3.txt
1146
0644
edit
dl
rm
1.6.4.4.txt
1034
0644
edit
dl
rm
1.6.4.5.txt
605
0644
edit
dl
rm
1.6.4.txt
5353
0644
edit
dl
rm
1.6.5.1.txt
549
0644
edit
dl
rm
1.6.5.2.txt
581
0644
edit
dl
rm
1.6.5.3.txt
2485
0644
edit
dl
rm
1.6.5.4.txt
1274
0644
edit
dl
rm
1.6.5.5.txt
1891
0644
edit
dl
rm
1.6.5.6.txt
791
0644
edit
dl
rm
1.6.5.7.txt
771
0644
edit
dl
rm
1.6.5.8.txt
900
0644
edit
dl
rm
1.6.5.9.txt
581
0644
edit
dl
rm
1.6.5.txt
6290
0644
edit
dl
rm
1.6.6.1.txt
1230
0644
edit
dl
rm
1.6.6.2.txt
1599
0644
edit
dl
rm
1.6.6.3.txt
751
0644
edit
dl
rm
1.6.6.txt
9459
0644
edit
dl
rm
1.7.0.1.txt
1287
0644
edit
dl
rm
1.7.0.2.txt
1476
0644
edit
dl
rm
1.7.0.3.txt
1176
0644
edit
dl
rm
1.7.0.4.txt
888
0644
edit
dl
rm
1.7.0.5.txt
915
0644
edit
dl
rm
1.7.0.6.txt
365
0644
edit
dl
rm
1.7.0.7.txt
467
0644
edit
dl
rm
1.7.0.8.txt
452
0644
edit
dl
rm
1.7.0.9.txt
219
0644
edit
dl
rm
1.7.0.txt
8765
0644
edit
dl
rm
1.7.1.1.txt
3825
0644
edit
dl
rm
1.7.1.2.txt
1069
0644
edit
dl
rm
1.7.1.3.txt
452
0644
edit
dl
rm
1.7.1.4.txt
219
0644
edit
dl
rm
1.7.1.txt
2941
0644
edit
dl
rm
1.7.2.1.txt
806
0644
edit
dl
rm
1.7.2.2.txt
695
0644
edit
dl
rm
1.7.2.3.txt
1355
0644
edit
dl
rm
1.7.2.4.txt
452
0644
edit
dl
rm
1.7.2.5.txt
219
0644
edit
dl
rm
1.7.2.txt
5978
0644
edit
dl
rm
1.7.3.1.txt
425
0644
edit
dl
rm
1.7.3.2.txt
149
0644
edit
dl
rm
1.7.3.3.txt
2075
0644
edit
dl
rm
1.7.3.4.txt
1639
0644
edit
dl
rm
1.7.3.5.txt
1454
0644
edit
dl
rm
1.7.3.txt
2642
0644
edit
dl
rm
1.7.4.1.txt
899
0644
edit
dl
rm
1.7.4.2.txt
2290
0644
edit
dl
rm
1.7.4.3.txt
1245
0644
edit
dl
rm
1.7.4.4.txt
1288
0644
edit
dl
rm
1.7.4.5.txt
127
0644
edit
dl
rm
1.7.4.txt
6502
0644
edit
dl
rm
1.7.5.1.txt
1905
0644
edit
dl
rm
1.7.5.2.txt
2189
0644
edit
dl
rm
1.7.5.3.txt
1101
0644
edit
dl
rm
1.7.5.4.txt
754
0644
edit
dl
rm
1.7.5.txt
5329
0644
edit
dl
rm
1.7.6.1.txt
2248
0644
edit
dl
rm
1.7.6.2.txt
245
0644
edit
dl
rm
1.7.6.3.txt
792
0644
edit
dl
rm
1.7.6.4.txt
1264
0644
edit
dl
rm
1.7.6.5.txt
969
0644
edit
dl
rm
1.7.6.6.txt
587
0644
edit
dl
rm
1.7.6.txt
5507
0644
edit
dl
rm
1.7.7.1.txt
2432
0644
edit
dl
rm
1.7.7.2.txt
1630
0644
edit
dl
rm
1.7.7.3.txt
696
0644
edit
dl
rm
1.7.7.4.txt
444
0644
edit
dl
rm
1.7.7.5.txt
481
0644
edit
dl
rm
1.7.7.6.txt
791
0644
edit
dl
rm
1.7.7.7.txt
334
0644
edit
dl
rm
1.7.7.txt
5408
0644
edit
dl
rm
1.7.8.1.txt
1438
0644
edit
dl
rm
1.7.8.2.txt
2925
0644
edit
dl
rm
1.7.8.3.txt
431
0644
edit
dl
rm
1.7.8.4.txt
921
0644
edit
dl
rm
1.7.8.5.txt
606
0644
edit
dl
rm
1.7.8.6.txt
621
0644
edit
dl
rm
1.7.8.txt
6351
0644
edit
dl
rm
1.7.9.1.txt
2461
0644
edit
dl
rm
1.7.9.2.txt
2706
0644
edit
dl
rm
1.7.9.3.txt
1958
0644
edit
dl
rm
1.7.9.4.txt
887
0644
edit
dl
rm
1.7.9.5.txt
731
0644
edit
dl
rm
1.7.9.6.txt
432
0644
edit
dl
rm
1.7.9.7.txt
371
0644
edit
dl
rm
1.7.9.txt
4373
0644
edit
dl
rm
1.7.10.1.txt
3073
0644
edit
dl
rm
1.7.10.2.txt
3445
0644
edit
dl
rm
1.7.10.3.txt
1876
0644
edit
dl
rm
1.7.10.4.txt
1057
0644
edit
dl
rm
1.7.10.5.txt
397
0644
edit
dl
rm
1.7.10.txt
9025
0644
edit
dl
rm
1.7.11.1.txt
224
0644
edit
dl
rm
1.7.11.2.txt
2291
0644
edit
dl
rm
1.7.11.3.txt
2314
0644
edit
dl
rm
1.7.11.4.txt
1171
0644
edit
dl
rm
1.7.11.5.txt
1292
0644
edit
dl
rm
1.7.11.6.txt
3436
0644
edit
dl
rm
1.7.11.7.txt
1959
0644
edit
dl
rm
1.7.11.txt
5506
0644
edit
dl
rm
1.7.12.1.txt
5800
0644
edit
dl
rm
1.7.12.2.txt
1767
0644
edit
dl
rm
1.7.12.3.txt
1329
0644
edit
dl
rm
1.7.12.4.txt
712
0644
edit
dl
rm
1.7.12.txt
5336
0644
edit
dl
rm
1.8.0.1.txt
2454
0644
edit
dl
rm
1.8.0.2.txt
1250
0644
edit
dl
rm
1.8.0.3.txt
424
0644
edit
dl
rm
1.8.0.txt
11072
0644
edit
dl
rm
1.8.1.1.txt
3577
0644
edit
dl
rm
1.8.1.2.txt
991
0644
edit
dl
rm
1.8.1.3.txt
1740
0644
edit
dl
rm
1.8.1.4.txt
337
0644
edit
dl
rm
1.8.1.5.txt
1940
0644
edit
dl
rm
1.8.1.6.txt
1563
0644
edit
dl
rm
1.8.1.txt
9624
0644
edit
dl
rm
1.8.2.1.txt
4561
0644
edit
dl
rm
1.8.2.2.txt
2438
0644
edit
dl
rm
1.8.2.3.txt
672
0644
edit
dl
rm
1.8.2.txt
22140
0644
edit
dl
rm
1.8.3.1.txt
433
0644
edit
dl
rm
1.8.3.2.txt
2406
0644
edit
dl
rm
1.8.3.3.txt
1778
0644
edit
dl
rm
1.8.3.4.txt
700
0644
edit
dl
rm
1.8.3.txt
18336
0644
edit
dl
rm
1.8.4.1.txt
3012
0644
edit
dl
rm
1.8.4.2.txt
3294
0644
edit
dl
rm
1.8.4.3.txt
2208
0644
edit
dl
rm
1.8.4.4.txt
342
0644
edit
dl
rm
1.8.4.5.txt
421
0644
edit
dl
rm
1.8.4.txt
21258
0644
edit
dl
rm
1.8.5.1.txt
254
0644
edit
dl
rm
1.8.5.2.txt
656
0644
edit
dl
rm
1.8.5.3.txt
859
0644
edit
dl
rm
1.8.5.4.txt
1912
0644
edit
dl
rm
1.8.5.5.txt
1466
0644
edit
dl
rm
1.8.5.6.txt
1686
0644
edit
dl
rm
1.8.5.txt
20348
0644
edit
dl
rm
1.9.0.txt
15197
0644
edit
dl
rm
1.9.1.txt
2409
0644
edit
dl
rm
1.9.2.txt
2807
0644
edit
dl
rm
1.9.3.txt
635
0644
edit
dl
rm
1.9.4.txt
607
0644
edit
dl
rm
1.9.5.txt
1678
0644
edit
dl
rm
2.0.0.txt
15911
0644
edit
dl
rm
2.0.1.txt
5171
0644
edit
dl
rm
2.0.2.txt
1350
0644
edit
dl
rm
2.0.3.txt
592
0644
edit
dl
rm
2.0.4.txt
153
0644
edit
dl
rm
2.0.5.txt
1678
0644
edit
dl
rm
2.1.0.txt
17336
0644
edit
dl
rm
2.1.1.txt
1806
0644
edit
dl
rm
2.1.2.txt
768
0644
edit
dl
rm
2.1.3.txt
970
0644
edit
dl
rm
2.1.4.txt
1678
0644
edit
dl
rm
2.2.0.txt
13338
0644
edit
dl
rm
2.2.1.txt
1674
0644
edit
dl
rm
2.2.2.txt
2357
0644
edit
dl
rm
2.2.3.txt
284
0644
edit
dl
rm
2.3.0.txt
12859
0644
edit
dl
rm
2.3.1.txt
1998
0644
edit
dl
rm
2.3.2.txt
3009
0644
edit
dl
rm
2.3.3.txt
1523
0644
edit
dl
rm
2.3.4.txt
1150
0644
edit
dl
rm
2.3.5.txt
1767
0644
edit
dl
rm
2.3.6.txt
400
0644
edit
dl
rm
2.3.7.txt
762
0644
edit
dl
rm
2.3.8.txt
814
0644
edit
dl
rm
2.3.9.txt
284
0644
edit
dl
rm
2.3.10.txt
711
0644
edit
dl
rm
2.4.0.txt
22110
0644
edit
dl
rm
2.4.1.txt
1654
0644
edit
dl
rm
2.4.2.txt
1954
0644
edit
dl
rm
2.4.3.txt
3066
0644
edit
dl
rm
2.4.4.txt
1230
0644
edit
dl
rm
2.4.5.txt
1066
0644
edit
dl
rm
2.4.6.txt
744
0644
edit
dl
rm
2.4.7.txt
2213
0644
edit
dl
rm
2.4.8.txt
704
0644
edit
dl
rm
2.4.9.txt
284
0644
edit
dl
rm
2.4.10.txt
711
0644
edit
dl
rm
2.4.11.txt
424
0644
edit
dl
rm
2.4.12.txt
479
0644
edit
dl
rm
2.5.0.txt
26158
0644
edit
dl
rm
2.5.1.txt
2861
0644
edit
dl
rm
2.5.2.txt
2654
0644
edit
dl
rm
2.5.3.txt
565
0644
edit
dl
rm
2.5.4.txt
709
0644
edit
dl
rm
2.5.5.txt
420
0644
edit
dl
rm
2.5.6.txt
475
0644
edit
dl
rm
2.6.0.txt
16434
0644
edit
dl
rm
2.6.1.txt
705
0644
edit
dl
rm
2.6.2.txt
2678
0644
edit
dl
rm
2.6.3.txt
4904
0644
edit
dl
rm
2.6.4.txt
2163
0644
edit
dl
rm
2.6.5.txt
2542
0644
edit
dl
rm
2.6.6.txt
420
0644
edit
dl
rm
2.6.7.txt
475
0644
edit
dl
rm
2.7.0.txt
17498
0644
edit
dl
rm
2.7.1.txt
3533
0644
edit
dl
rm
2.7.2.txt
1739
0644
edit
dl
rm
2.7.3.txt
2597
0644
edit
dl
rm
2.7.4.txt
420
0644
edit
dl
rm
2.7.5.txt
544
0644
edit
dl
rm
2.7.6.txt
951
0644
edit
dl
rm
2.8.0.txt
19677
0644
edit
dl
rm
2.8.1.txt
255
0644
edit
dl
rm
2.8.2.txt
2704
0644
edit
dl
rm
2.8.3.txt
4433
0644
edit
dl
rm
2.8.4.txt
3061
0644
edit
dl
rm
2.8.5.txt
475
0644
edit
dl
rm
2.8.6.txt
122
0644
edit
dl
rm
2.9.0.txt
21836
0644
edit
dl
rm
2.9.1.txt
4930
0644
edit
dl
rm
2.9.2.txt
427
0644
edit
dl
rm
2.9.3.txt
7466
0644
edit
dl
rm
2.9.4.txt
4384
0644
edit
dl
rm
2.9.5.txt
122
0644
edit
dl
rm
2.10.0.txt
30132
0644
edit
dl
rm
2.10.1.txt
5730
0644
edit
dl
rm
2.10.2.txt
5298
0644
edit
dl
rm
2.10.3.txt
2353
0644
edit
dl
rm
2.10.4.txt
124
0644
edit
dl
rm
2.10.5.txt
561
0644
edit
dl
rm
2.11.0.txt
27992
0644
edit
dl
rm
2.11.1.txt
6815
0644
edit
dl
rm
2.11.2.txt
479
0644
edit
dl
rm
2.11.3.txt
124
0644
edit
dl
rm
2.11.4.txt
561
0644
edit
dl
rm
2.12.0.txt
22093
0644
edit
dl
rm
2.12.1.txt
1611
0644
edit
dl
rm
2.12.2.txt
3614
0644
edit
dl
rm
2.12.3.txt
2539
0644
edit
dl
rm
2.12.4.txt
124
0644
edit
dl
rm
2.12.5.txt
561
0644
edit
dl
rm
2.13.0.txt
28222
0644
edit
dl
rm
2.13.1.txt
5026
0644
edit
dl
rm
2.13.2.txt
2178
0644
edit
dl
rm
2.13.3.txt
2388
0644
edit
dl
rm
2.13.4.txt
1078
0644
edit
dl
rm
2.13.5.txt
124
0644
edit
dl
rm
2.13.6.txt
561
0644
edit
dl
rm
2.13.7.txt
780
0644
edit
dl
rm
2.14.0.txt
22728
0644
edit
dl
rm
2.14.1.txt
124
0644
edit
dl
rm
2.14.2.txt
4486
0644
edit
dl
rm
2.14.3.txt
4010
0644
edit
dl
rm
2.14.4.txt
167
0644
edit
dl
rm
2.14.5.txt
578
0644
edit
dl
rm
2.14.6.txt
2144
0644
edit
dl
rm
2.15.0.txt
21971
0644
edit
dl
rm
2.15.1.txt
3434
0644
edit
dl
rm
2.15.2.txt
1894
0644
edit
dl
rm
2.15.3.txt
210
0644
edit
dl
rm
2.15.4.txt
482
0644
edit
dl
rm
2.16.0.txt
20744
0644
edit
dl
rm
2.16.1.txt
305
0644
edit
dl
rm
2.16.2.txt
1083
0644
edit
dl
rm
2.16.3.txt
1757
0644
edit
dl
rm
2.16.4.txt
167
0644
edit
dl
rm
2.16.5.txt
210
0644
edit
dl
rm
2.16.6.txt
333
0644
edit
dl
rm
2.17.0.txt
17884
0644
edit
dl
rm
2.17.1.txt
617
0644
edit
dl
rm
2.17.2.txt
493
0644
edit
dl
rm
2.17.3.txt
490
0644
edit
dl
rm
2.17.4.txt
520
0644
edit
dl
rm
2.17.5.txt
828
0644
edit
dl
rm
2.17.6.txt
511
0644
edit
dl
rm
2.18.0.txt
26784
0644
edit
dl
rm
2.18.1.txt
227
0644
edit
dl
rm
2.18.2.txt
343
0644
edit
dl
rm
2.18.3.txt
167
0644
edit
dl
rm
2.18.4.txt
167
0644
edit
dl
rm
2.18.5.txt
207
0644
edit
dl
rm
2.19.0.txt
28138
0644
edit
dl
rm
2.19.1.txt
227
0644
edit
dl
rm
2.19.2.txt
4446
0644
edit
dl
rm
2.19.3.txt
343
0644
edit
dl
rm
2.19.4.txt
167
0644
edit
dl
rm
2.19.5.txt
167
0644
edit
dl
rm
2.19.6.txt
221
0644
edit
dl
rm
2.20.0.txt
32536
0644
edit
dl
rm
2.20.1.txt
616
0644
edit
dl
rm
2.20.2.txt
828
0644
edit
dl
rm
2.20.3.txt
167
0644
edit
dl
rm
2.20.4.txt
167
0644
edit
dl
rm
2.20.5.txt
230
0644
edit
dl
rm
2.21.0.txt
20130
0644
edit
dl
rm
2.21.1.txt
530
0644
edit
dl
rm
2.21.2.txt
167
0644
edit
dl
rm
2.21.3.txt
167
0644
edit
dl
rm
2.21.4.txt
239
0644
edit
dl
rm
2.22.0.txt
26979
0644
edit
dl
rm
2.22.1.txt
6233
0644
edit
dl
rm
2.22.2.txt
377
0644
edit
dl
rm
2.22.3.txt
167
0644
edit
dl
rm
2.22.4.txt
167
0644
edit
dl
rm
2.22.5.txt
248
0644
edit
dl
rm
2.23.0.txt
13943
0644
edit
dl
rm
2.23.1.txt
377
0644
edit
dl
rm
2.23.2.txt
167
0644
edit
dl
rm
2.23.3.txt
167
0644
edit
dl
rm
2.23.4.txt
257
0644
edit
dl
rm
2.24.0.txt
17750
0644
edit
dl
rm
2.24.1.txt
377
0644
edit
dl
rm
2.24.2.txt
167
0644
edit
dl
rm
2.24.3.txt
167
0644
edit
dl
rm
2.24.4.txt
266
0644
edit
dl
rm
2.25.0.txt
16410
0644
edit
dl
rm
2.25.1.txt
2141
0644
edit
dl
rm
2.25.2.txt
2494
0644
edit
dl
rm
2.25.3.txt
167
0644
edit
dl
rm
2.25.4.txt
167
0644
edit
dl
rm
2.25.5.txt
275
0644
edit
dl
rm
2.26.0.txt
14305
0644
edit
dl
rm
2.26.1.txt
167
0644
edit
dl
rm
2.26.2.txt
167
0644
edit
dl
rm
2.26.3.txt
284
0644
edit
dl
rm
2.27.0.txt
23519
0644
edit
dl
rm
2.27.1.txt
293
0644
edit
dl
rm
2.28.0.txt
9709
0644
edit
dl
rm
2.28.1.txt
302
0644
edit
dl
rm
2.29.0.txt
23314
0644
edit
dl
rm
2.29.1.txt
487
0644
edit
dl
rm
2.29.2.txt
331
0644
edit
dl
rm
2.29.3.txt
311
0644
edit
dl
rm
2.30.0.txt
17380
0644
edit
dl
rm
2.30.1.txt
1967
0644
edit
dl
rm
2.30.2.txt
320
0644
edit
dl
rm
2.31.0.txt
15390
0644
edit
dl
rm
2.31.1.txt
895
0644
edit
dl
rm
2.32.0.txt
17430
0644
edit
dl
rm
2.33.0.txt
12237
0644
edit
dl
rm
2.33.1.txt
5164
0644
edit
dl
rm
2.34.0.txt
18182
0644
edit
dl
rm
2.34.1.txt
794
0644
edit
dl
rm
Edit:
/usr/share/doc/git/RelNotes/2.19.0.txt
(28138B)
Git 2.19 Release Notes ====================== Updates since v2.18 ------------------- UI, Workflows & Features * "git diff" compares the index and the working tree. For paths added with intent-to-add bit, the command shows the full contents of them as added, but the paths themselves were not marked as new files. They are now shown as new by default. "git apply" learned the "--intent-to-add" option so that an otherwise working-tree-only application of a patch will add new paths to the index marked with the "intent-to-add" bit. * "git grep" learned the "--column" option that gives not just the line number but the column number of the hit. * The "-l" option in "git branch -l" is an unfortunate short-hand for "--create-reflog", but many users, both old and new, somehow expect it to be something else, perhaps "--list". This step warns when "-l" is used as a short-hand for "--create-reflog" and warns about the future repurposing of the it when it is used. * The userdiff pattern for .php has been updated. * The content-transfer-encoding of the message "git send-email" sends out by default was 8bit, which can cause trouble when there is an overlong line to bust RFC 5322/2822 limit. A new option 'auto' to automatically switch to quoted-printable when there is such a line in the payload has been introduced and is made the default. * "git checkout" and "git worktree add" learned to honor checkout.defaultRemote when auto-vivifying a local branch out of a remote tracking branch in a repository with multiple remotes that have tracking branches that share the same names. (merge 8d7b558bae ab/checkout-default-remote later to maint). * "git grep" learned the "--only-matching" option. * "git rebase --rebase-merges" mode now handles octopus merges as well. * Add a server-side knob to skip commits in exponential/fibbonacci stride in an attempt to cover wider swath of history with a smaller number of iterations, potentially accepting a larger packfile transfer, instead of going back one commit a time during common ancestor discovery during the "git fetch" transaction. (merge 42cc7485a2 jt/fetch-negotiator-skipping later to maint). * A new configuration variable core.usereplacerefs has been added, primarily to help server installations that want to ignore the replace mechanism altogether. * Teach "git tag -s" etc. a few configuration variables (gpg.format that can be set to "openpgp" or "x509", and gpg.<format>.program that is used to specify what program to use to deal with the format) to allow x.509 certs with CMS via "gpgsm" to be used instead of openpgp via "gnupg". * Many more strings are prepared for l10n. * "git p4 submit" learns to ask its own pre-submit hook if it should continue with submitting. * The test performed at the receiving end of "git push" to prevent bad objects from entering repository can be customized via receive.fsck.* configuration variables; we now have gained a counterpart to do the same on the "git fetch" side, with fetch.fsck.* configuration variables. * "git pull --rebase=interactive" learned "i" as a short-hand for "interactive". * "git instaweb" has been adjusted to run better with newer Apache on RedHat based distros. * "git range-diff" is a reimplementation of "git tbdiff" that lets us compare individual patches in two iterations of a topic. * The sideband code learned to optionally paint selected keywords at the beginning of incoming lines on the receiving end. * "git branch --list" learned to take the default sort order from the 'branch.sort' configuration variable, just like "git tag --list" pays attention to 'tag.sort'. * "git worktree" command learned "--quiet" option to make it less verbose. Performance, Internal Implementation, Development Support etc. * The bulk of "git submodule foreach" has been rewritten in C. * The in-core "commit" object had an all-purpose "void *util" field, which was tricky to use especially in library-ish part of the code. All of the existing uses of the field has been migrated to a more dedicated "commit-slab" mechanism and the field is eliminated. * A less often used command "git show-index" has been modernized. (merge fb3010c31f jk/show-index later to maint). * The conversion to pass "the_repository" and then "a_repository" throughout the object access API continues. * Continuing with the idea to programmatically enumerate various pieces of data required for command line completion, teach the codebase to report the list of configuration variables subcommands care about to help complete them. * Separate "rebase -p" codepath out of "rebase -i" implementation to slim down the latter and make it easier to manage. * Make refspec parsing codepath more robust. * Some flaky tests have been fixed. * Continuing with the idea to programmatically enumerate various pieces of data required for command line completion, the codebase has been taught to enumerate options prefixed with "--no-" to negate them. * Build and test procedure for netrc credential helper (in contrib/) has been updated. * Remove unused function definitions and declarations from ewah bitmap subsystem. * Code preparation to make "git p4" closer to be usable with Python 3. * Tighten the API to make it harder to misuse in-tree .gitmodules file, even though it shares the same syntax with configuration files, to read random configuration items from it. * "git fast-import" has been updated to avoid attempting to create delta against a zero-byte-long string, which is pointless. * The codebase has been updated to compile cleanly with -pedantic option. (merge 2b647a05d7 bb/pedantic later to maint). * The character display width table has been updated to match the latest Unicode standard. (merge 570951eea2 bb/unicode-11-width later to maint). * test-lint now looks for broken use of "VAR=VAL shell_func" in test scripts. * Conversion from uchar[40] to struct object_id continues. * Recent "security fix" to pay attention to contents of ".gitmodules" while accepting "git push" was a bit overly strict than necessary, which has been adjusted. * "git fsck" learns to make sure the optional commit-graph file is in a sane state. * "git diff --color-moved" feature has further been tweaked. * Code restructuring and a small fix to transport protocol v2 during fetching. * Parsing of -L[<N>][,[<M>]] parameters "git blame" and "git log" take has been tweaked. * lookup_commit_reference() and friends have been updated to find in-core object for a specific in-core repository instance. * Various glitches in the heuristics of merge-recursive strategy have been documented in new tests. * "git fetch" learned a new option "--negotiation-tip" to limit the set of commits it tells the other end as "have", to reduce wasted bandwidth and cycles, which would be helpful when the receiving repository has a lot of refs that have little to do with the history at the remote it is fetching from. * For a large tree, the index needs to hold many cache entries allocated on heap. These cache entries are now allocated out of a dedicated memory pool to amortize malloc(3) overhead. * Tests to cover various conflicting cases have been added for merge-recursive. * Tests to cover conflict cases that involve submodules have been added for merge-recursive. * Look for broken "&&" chains that are hidden in subshell, many of which have been found and corrected. * The singleton commit-graph in-core instance is made per in-core repository instance. * "make DEVELOPER=1 DEVOPTS=pedantic" allows developers to compile with -pedantic option, which may catch more problematic program constructs and potential bugs. * Preparatory code to later add json output for telemetry data has been added. * Update the way we use Coccinelle to find out-of-style code that need to be modernised. * It is too easy to misuse system API functions such as strcat(); these selected functions are now forbidden in this codebase and will cause a compilation failure. * Add a script (in contrib/) to help users of VSCode work better with our codebase. * The Travis CI scripts were taught to ship back the test data from failed tests. (merge aea8879a6a sg/travis-retrieve-trash-upon-failure later to maint). * The parse-options machinery learned to refrain from enclosing placeholder string inside a "<bra" and "ket>" pair automatically without PARSE_OPT_LITERAL_ARGHELP. Existing help text for option arguments that are not formatted correctly have been identified and fixed. (merge 5f0df44cd7 rs/parse-opt-lithelp later to maint). * Noiseword "extern" has been removed from function decls in the header files. * A few atoms like %(objecttype) and %(objectsize) in the format specifier of "for-each-ref --format=<format>" can be filled without getting the full contents of the object, but just with the object header. These cases have been optimized by calling oid_object_info() API (instead of reading and inspecting the data). * The end result of documentation update has been made to be inspected more easily to help developers. * The API to iterate over all objects learned to optionally list objects in the order they appear in packfiles, which helps locality of access if the caller accesses these objects while as objects are enumerated. * Improve built-in facility to catch broken &&-chain in the tests. * The more library-ish parts of the codebase learned to work on the in-core index-state instance that is passed in by their callers, instead of always working on the singleton "the_index" instance. * A test prerequisite defined by various test scripts with slightly different semantics has been consolidated into a single copy and made into a lazily defined one. (merge 6ec633059a wc/make-funnynames-shared-lazy-prereq later to maint). * After a partial clone, repeated fetches from promisor remote would have accumulated many packfiles marked with .promisor bit without getting them coalesced into fewer packfiles, hurting performance. "git repack" now learned to repack them. * Partially revert the support for multiple hash functions to regain hash comparison performance; we'd think of a way to do this better in the next cycle. * "git help --config" (which is used in command line completion) missed the configuration variables not described in the main config.txt file but are described in another file that is included by it, which has been corrected. * The test linter code has learned that the end of here-doc mark "EOF" can be quoted in a double-quote pair, not just in a single-quote pair. Fixes since v2.18 ----------------- * "git remote update" can take both a single remote nickname and a nickname for remote groups, and the completion script (in contrib/) has been taught about it. (merge 9cd4382ad5 ls/complete-remote-update-names later to maint). * "git fetch --shallow-since=<cutoff>" that specifies the cut-off point that is newer than the existing history used to end up grabbing the entire history. Such a request now errors out. (merge e34de73c56 nd/reject-empty-shallow-request later to maint). * Fix for 2.17-era regression around `core.safecrlf`. (merge 6cb09125be as/safecrlf-quiet-fix later to maint). * The recent addition of "partial clone" experimental feature kicked in when it shouldn't, namely, when there is no partial-clone filter defined even if extensions.partialclone is set. (merge cac1137dc4 jh/partial-clone later to maint). * "git send-pack --signed" (hence "git push --signed" over the http transport) did not read user ident from the config mechanism to determine whom to sign the push certificate as, which has been corrected. (merge d067d98887 ms/send-pack-honor-config later to maint). * "git fetch-pack --all" used to unnecessarily fail upon seeing an annotated tag that points at an object other than a commit. (merge c12c9df527 jk/fetch-all-peeled-fix later to maint). * When user edits the patch in "git add -p" and the user's editor is set to strip trailing whitespaces indiscriminately, an empty line that is unchanged in the patch would become completely empty (instead of a line with a sole SP on it). The code introduced in Git 2.17 timeframe failed to parse such a patch, but now it learned to notice the situation and cope with it. (merge f4d35a6b49 pw/add-p-recount later to maint). * The code to try seeing if a fetch is necessary in a submodule during a fetch with --recurse-submodules got confused when the path to the submodule was changed in the range of commits in the superproject, sometimes showing "(null)". This has been corrected. * Bugfix for "rebase -i" corner case regression. (merge a9279c6785 pw/rebase-i-keep-reword-after-conflict later to maint). * Recently added "--base" option to "git format-patch" command did not correctly generate prereq patch ids. (merge 15b76c1fb3 xy/format-patch-prereq-patch-id-fix later to maint). * POSIX portability fix in Makefile to fix a glitch introduced a few releases ago. (merge 6600054e9b dj/runtime-prefix later to maint). * "git filter-branch" when used with the "--state-branch" option still attempted to rewrite the commits whose filtered result is known from the previous attempt (which is recorded on the state branch); the command has been corrected not to waste cycles doing so. (merge 709cfe848a mb/filter-branch-optim later to maint). * Clarify that setting core.ignoreCase to deviate from reality would not turn a case-incapable filesystem into a case-capable one. (merge 48294b512a ms/core-icase-doc later to maint). * "fsck.skipList" did not prevent a blob object listed there from being inspected for is contents (e.g. we recently started to inspect the contents of ".gitmodules" for certain malicious patterns), which has been corrected. (merge fb16287719 rj/submodule-fsck-skip later to maint). * "git checkout --recurse-submodules another-branch" did not report in which submodule it failed to update the working tree, which resulted in an unhelpful error message. (merge ba95d4e4bd sb/submodule-move-head-error-msg later to maint). * "git rebase" behaved slightly differently depending on which one of the three backends gets used; this has been documented and an effort to make them more uniform has begun. (merge b00bf1c9a8 en/rebase-consistency later to maint). * The "--ignore-case" option of "git for-each-ref" (and its friends) did not work correctly, which has been fixed. (merge e674eb2528 jk/for-each-ref-icase later to maint). * "git fetch" failed to correctly validate the set of objects it received when making a shallow history deeper, which has been corrected. (merge cf1e7c0770 jt/connectivity-check-after-unshallow later to maint). * Partial clone support of "git clone" has been updated to correctly validate the objects it receives from the other side. The server side has been corrected to send objects that are directly requested, even if they may match the filtering criteria (e.g. when doing a "lazy blob" partial clone). (merge a7e67c11b8 jt/partial-clone-fsck-connectivity later to maint). * Handling of an empty range by "git cherry-pick" was inconsistent depending on how the range ended up to be empty, which has been corrected. (merge c5e358d073 jk/empty-pick-fix later to maint). * "git reset --merge" (hence "git merge ---abort") and "git reset --hard" had trouble working correctly in a sparsely checked out working tree after a conflict, which has been corrected. (merge b33fdfc34c mk/merge-in-sparse-checkout later to maint). * Correct a broken use of "VAR=VAL shell_func" in a test. (merge 650161a277 jc/t3404-one-shot-export-fix later to maint). * "git rev-parse ':/substring'" did not consider the history leading only to HEAD when looking for a commit with the given substring, when the HEAD is detached. This has been fixed. (merge 6b3351e799 wc/find-commit-with-pattern-on-detached-head later to maint). * Build doc update for Windows. (merge ede8d89bb1 nd/command-list later to maint). * core.commentchar is now honored when preparing the list of commits to replay in "rebase -i". * "git pull --rebase" on a corrupt HEAD caused a segfault. In general we substitute an empty tree object when running the in-core equivalent of the diff-index command, and the codepath has been corrected to do so as well to fix this issue. (merge 3506dc9445 jk/has-uncommitted-changes-fix later to maint). * httpd tests saw occasional breakage due to the way its access log gets inspected by the tests, which has been updated to make them less flaky. (merge e8b3b2e275 sg/httpd-test-unflake later to maint). * Tests to cover more D/F conflict cases have been added for merge-recursive. * "git gc --auto" opens file descriptors for the packfiles before spawning "git repack/prune", which would upset Windows that does not want a process to work on a file that is open by another process. The issue has been worked around. (merge 12e73a3ce4 kg/gc-auto-windows-workaround later to maint). * The recursive merge strategy did not properly ensure there was no change between HEAD and the index before performing its operation, which has been corrected. (merge 55f39cf755 en/dirty-merge-fixes later to maint). * "git rebase" started exporting GIT_DIR environment variable and exposing it to hook scripts when part of it got rewritten in C. Instead of matching the old scripted Porcelains' behaviour, compensate by also exporting GIT_WORK_TREE environment as well to lessen the damage. This can harm existing hooks that want to operate on different repository, but the current behaviour is already broken for them anyway. (merge ab5e67d751 bc/sequencer-export-work-tree-as-well later to maint). * "git send-email" when using in a batched mode that limits the number of messages sent in a single SMTP session lost the contents of the variable used to choose between tls/ssl, unable to send the second and later batches, which has been fixed. (merge 636f3d7ac5 jm/send-email-tls-auth-on-batch later to maint). * The lazy clone support had a few places where missing but promised objects were not correctly tolerated, which have been fixed. * One of the "diff --color-moved" mode "dimmed_zebra" that was named in an unusual way has been deprecated and replaced by "dimmed-zebra". (merge e3f2f5f9cd es/diff-color-moved-fix later to maint). * The wire-protocol v2 relies on the client to send "ref prefixes" to limit the bandwidth spent on the initial ref advertisement. "git clone" when learned to speak v2 forgot to do so, which has been corrected. (merge 402c47d939 bw/clone-ref-prefixes later to maint). * "git diff --histogram" had a bad memory usage pattern, which has been rearranged to reduce the peak usage. (merge 79cb2ebb92 sb/histogram-less-memory later to maint). * Code clean-up to use size_t/ssize_t when they are the right type. (merge 7726d360b5 jk/size-t later to maint). * The wire-protocol v2 relies on the client to send "ref prefixes" to limit the bandwidth spent on the initial ref advertisement. "git fetch $remote branch:branch" that asks tags that point into the history leading to the "branch" automatically followed sent to narrow prefix and broke the tag following, which has been fixed. (merge 2b554353a5 jt/tag-following-with-proto-v2-fix later to maint). * When the sparse checkout feature is in use, "git cherry-pick" and other mergy operations lost the skip_worktree bit when a path that is excluded from checkout requires content level merge, which is resolved as the same as the HEAD version, without materializing the merge result in the working tree, which made the path appear as deleted. This has been corrected by preserving the skip_worktree bit (and not materializing the file in the working tree). (merge 2b75fb601c en/merge-recursive-skip-fix later to maint). * The "author-script" file "git rebase -i" creates got broken when we started to move the command away from shell script, which is getting fixed now. (merge 5522bbac20 es/rebase-i-author-script-fix later to maint). * The automatic tree-matching in "git merge -s subtree" was broken 5 years ago and nobody has noticed since then, which is now fixed. (merge 2ec4150713 jk/merge-subtree-heuristics later to maint). * "git fetch $there refs/heads/s" ought to fetch the tip of the branch 's', but when "refs/heads/refs/heads/s", i.e. a branch whose name is "refs/heads/s" exists at the same time, fetched that one instead by mistake. This has been corrected to honor the usual disambiguation rules for abbreviated refnames. (merge 60650a48c0 jt/refspec-dwim-precedence-fix later to maint). * Futureproofing a helper function that can easily be misused. (merge 65bb21e77e es/want-color-fd-defensive later to maint). * The http-backend (used for smart-http transport) used to slurp the whole input until EOF, without paying attention to CONTENT_LENGTH that is supplied in the environment and instead expecting the Web server to close the input stream. This has been fixed. (merge eebfe40962 mk/http-backend-content-length later to maint). * "git merge --abort" etc. did not clean things up properly when there were conflicted entries in the index in certain order that are involved in D/F conflicts. This has been corrected. (merge ad3762042a en/abort-df-conflict-fixes later to maint). * "git diff --indent-heuristic" had a bad corner case performance. (merge 301ef85401 sb/indent-heuristic-optim later to maint). * The "--exec" option to "git rebase --rebase-merges" placed the exec commands at wrong places, which has been corrected. * "git verify-tag" and "git verify-commit" have been taught to use the exit status of underlying "gpg --verify" to signal bad or untrusted signature they found. (merge 4e5dc9ca17 jc/gpg-status later to maint). * "git mergetool" stopped and gave an extra prompt to continue after the last path has been handled, which did not make much sense. (merge d651a54b8a ng/mergetool-lose-final-prompt later to maint). * Among the three codepaths we use O_APPEND to open a file for appending, one used for writing GIT_TRACE output requires O_APPEND implementation that behaves sensibly when multiple processes are writing to the same file. POSIX emulation used in the Windows port has been updated to improve in this area. (merge d641097589 js/mingw-o-append later to maint). * "git pull --rebase -v" in a repository with a submodule barfed as an intermediate process did not understand what "-v(erbose)" flag meant, which has been fixed. (merge e84c3cf3dc sb/pull-rebase-submodule later to maint). * Recent update to "git config" broke updating variable in a subsection, which has been corrected. (merge bff7df7a87 sb/config-write-fix later to maint). * When "git rebase -i" is told to squash two or more commits into one, it labeled the log message for each commit with its number. It correctly called the first one "1st commit", but the next one was "commit #1", which was off-by-one. This has been corrected. (merge dd2e36ebac pw/rebase-i-squash-number-fix later to maint). * "git rebase -i", when a 'merge <branch>' insn in its todo list fails, segfaulted, which has been (minimally) corrected. (merge bc9238bb09 pw/rebase-i-merge-segv-fix later to maint). * "git cherry-pick --quit" failed to remove CHERRY_PICK_HEAD even though we won't be in a cherry-pick session after it returns, which has been corrected. (merge 3e7dd99208 nd/cherry-pick-quit-fix later to maint). * In a recent update in 2.18 era, "git pack-objects" started producing a larger than necessary packfiles by missing opportunities to use large deltas. This has been corrected. * The meaning of the possible values the "core.checkStat" configuration variable can take were not adequately documented, which has been fixed. (merge 9bf5d4c4e2 nd/config-core-checkstat-doc later to maint). * Recent "git rebase -i" update started to write bogusly formatted author-script, with a matching broken reading code. These are fixed. * Recent addition of "directory rename" heuristics to the merge-recursive backend makes the command susceptible to false positives and false negatives. In the context of "git am -3", which does not know about surrounding unmodified paths and thus cannot inform the merge machinery about the full trees involved, this risk is particularly severe. As such, the heuristic is disabled for "git am -3" to keep the machinery "more stupid but predictable". * "git merge-base" in 2.19-rc1 has performance regression when the (experimental) commit-graph feature is in use, which has been mitigated. * Code cleanup, docfix, build fix, etc. (merge aee9be2ebe sg/update-ref-stdin-cleanup later to maint). (merge 037714252f jc/clean-after-sanity-tests later to maint). (merge 5b26c3c941 en/merge-recursive-cleanup later to maint). (merge 0dcbc0392e bw/config-refer-to-gitsubmodules-doc later to maint). (merge bb4d000e87 bw/protocol-v2 later to maint). (merge 928f0ab4ba vs/typofixes later to maint). (merge d7f590be84 en/rebase-i-microfixes later to maint). (merge 81d395cc85 js/rebase-recreate-merge later to maint). (merge 51d1863168 tz/exclude-doc-smallfixes later to maint). (merge a9aa3c0927 ds/commit-graph later to maint). (merge 5cf8e06474 js/enhanced-version-info later to maint). (merge 6aaded5509 tb/config-default later to maint). (merge 022d2ac1f3 sb/blame-color later to maint). (merge 5a06a20e0c bp/test-drop-caches-for-windows later to maint). (merge dd61cc1c2e jk/ui-color-always-to-auto later to maint). (merge 1e83b9bfdd sb/trailers-docfix later to maint). (merge ab29f1b329 sg/fast-import-dump-refs-on-checkpoint-fix later to maint). (merge 6a8ad880f0 jn/subtree-test-fixes later to maint). (merge ffbd51cc60 nd/pack-objects-threading-doc later to maint). (merge e9dac7be60 es/mw-to-git-chain-fix later to maint). (merge fe583c6c7a rs/remote-mv-leakfix later to maint). (merge 69885ab015 en/t3031-title-fix later to maint). (merge 8578037bed nd/config-blame-sort later to maint). (merge 8ad169c4ba hn/config-in-code-comment later to maint). (merge b7446fcfdf ar/t4150-am-scissors-test-fix later to maint). (merge a8132410ee js/typofixes later to maint). (merge 388d0ff6e5 en/update-index-doc later to maint). (merge e05aa688dd jc/update-index-doc later to maint). (merge 10c600172c sg/t5310-empty-input-fix later to maint). (merge 5641eb9465 jh/partial-clone-doc later to maint). (merge 2711b1ad5e ab/submodule-relative-url-tests later to maint). (merge ce528de023 ab/unconditional-free-and-null later to maint). (merge bbc072f5d8 rs/opt-updates later to maint). (merge 69d846f053 jk/use-compat-util-in-test-tool later to maint). (merge 1820703045 js/larger-timestamps later to maint). (merge c8b35b95e1 sg/t4051-fix later to maint). (merge 30612cb670 sg/t0020-conversion-fix later to maint). (merge 15da753709 sg/t7501-thinkofix later to maint). (merge 79b04f9b60 sg/t3903-missing-fix later to maint). (merge 2745817028 sg/t3420-autostash-fix later to maint). (merge 7afb0d6777 sg/test-rebase-editor-fix later to maint). (merge 6c6ce21baa es/freebsd-iconv-portability later to maint).
Save
cmd:
run