Compare commits
2522 Commits
Author | SHA1 | Date | |
---|---|---|---|
af6d1d602a | |||
9e25a2e85a | |||
bbfc8212e1 | |||
77edbde474 | |||
ef09a7fbbe | |||
b59c06092f | |||
c365967f21 | |||
e61304f21d | |||
9cfc01e560 | |||
b809c3d900 | |||
b5f309dc7f | |||
d64b99d35b | |||
6287460203 | |||
6aa501aab2 | |||
79c887d29d | |||
62a7648a5e | |||
1af632444b | |||
bf4ca3fdd2 | |||
d9e2677559 | |||
48939c572c | |||
f11b01bdd5 | |||
e4bea4a67d | |||
a45b824097 | |||
0a5af02acb | |||
69247e283c | |||
689cfaf9e7 | |||
474e4f9b55 | |||
cd9a57f6a0 | |||
872c9e67ec | |||
ae9e6ef35e | |||
3fb1d4da5e | |||
8b02ffee3f | |||
ff09581e12 | |||
444b8548b1 | |||
ee2b241b69 | |||
1725c4c64b | |||
b20f67a659 | |||
6d71443d8e | |||
0a15e94e10 | |||
a02d78c4ae | |||
0fadf75a3d | |||
ee8870a800 | |||
25ed97c61b | |||
32e28fc2de | |||
70fb2c9886 | |||
b306aefded | |||
0e17a537f3 | |||
49c2cbe69a | |||
f72187eaf5 | |||
32b6c51888 | |||
b37c9a0fd1 | |||
7bdcb8ef1f | |||
6a4fd600f4 | |||
690bd356fe | |||
d46f95a2bd | |||
dca0768820 | |||
49b7148778 | |||
ffa6045102 | |||
fe77a458d1 | |||
1c23cc1344 | |||
3de9da8e2c | |||
d4d96982ec | |||
fdad5ab3eb | |||
b40b6187e4 | |||
9b338cbefd | |||
d79e73a833 | |||
5e01fc9d80 | |||
5d54f964c6 | |||
5586bd2de2 | |||
4e408f1060 | |||
c5d1c7028d | |||
b4266066b6 | |||
6a0699bccc | |||
367e9feee2 | |||
77357e806f | |||
dc79a67841 | |||
44d2aec6e8 | |||
5bafb3576a | |||
b66c77a64e | |||
f0a74bcb03 | |||
6b58df54cf | |||
3584cff71c | |||
b031f47802 | |||
187fc8b8b6 | |||
4b81f690f6 | |||
bffcb4d9d6 | |||
a7775c7eb8 | |||
66c0c44df6 | |||
637799bf0a | |||
afb32e8101 | |||
7c1200745b | |||
b6d8887d3d | |||
ae578de926 | |||
8d133a4653 | |||
8f0f110156 | |||
c5ead19ea2 | |||
42b5e09d1e | |||
ea7dc012d2 | |||
bee8691f19 | |||
3d40e3723b | |||
4dbf7f30b1 | |||
4bc1fd6e39 | |||
2ec02dd5a8 | |||
522a5c2cf5 | |||
8737dab346 | |||
4e58cedd94 | |||
16a86907bc | |||
66833f0e70 | |||
ae44b5a4f3 | |||
e8f55568de | |||
35cf94eaf6 | |||
d9a65b6c0a | |||
0c41a887b4 | |||
8fe8bae9d2 | |||
92a5d1c9b4 | |||
ca0cc98e03 | |||
72b113e562 | |||
b996f84989 | |||
709b3f32d3 | |||
5acffd3473 | |||
57f183b698 | |||
efa3d64ce8 | |||
6540b71614 | |||
b45c172e51 | |||
53a66ec37c | |||
3955140653 | |||
bac01c6469 | |||
ccdd5d1eb1 | |||
2f040a9671 | |||
88682b016d | |||
e082113484 | |||
614c3d8f2e | |||
469888e6a5 | |||
d9e9b44d7a | |||
597a977489 | |||
e124ecf7f7 | |||
e4f8d27585 | |||
1e93770888 | |||
fd680bc558 | |||
7a132c628e | |||
c93ca46cf5 | |||
66e905b7dd | |||
a7439d0f9d | |||
8174627b3d | |||
1549577338 | |||
597fa8cb43 | |||
5146c2f148 | |||
c21b2511c2 | |||
0160f7e725 | |||
f58c7468cd | |||
95b4ff3931 | |||
a16eb6b1ff | |||
bb01122a82 | |||
f6a5af0f62 | |||
bd72824c60 | |||
f2563c9ef3 | |||
baf8ec8d3a | |||
0c164ae7a6 | |||
2be6b6f411 | |||
325b06deda | |||
ff7b83f562 | |||
be6444d1ca | |||
f3cc916acc | |||
e9f2118ddf | |||
bf8ae49a8f | |||
225bc32a98 | |||
b06a5047ee | |||
f7cd3c0832 | |||
efedbb11de | |||
cfeae5a31e | |||
8bcda98da5 | |||
3cf9bb36bf | |||
8ef6aad664 | |||
289946016e | |||
8f333b5f66 | |||
92c199fa6d | |||
ec3d4607ae | |||
523ccf5dba | |||
cb92e28384 | |||
fb2aacea67 | |||
813147b681 | |||
4e7e75353a | |||
fd3e513e88 | |||
7d3bc0806b | |||
88e7a93391 | |||
309f8cf9f9 | |||
508b35770d | |||
37eabbe498 | |||
9b272daa50 | |||
86e24f5b12 | |||
0934645bf8 | |||
2640b6a3a6 | |||
81e30fc0c7 | |||
55095d03a9 | |||
bbc7dccd9d | |||
117e2caa42 | |||
18c9fced7b | |||
738cdce5b2 | |||
37a65ae0c9 | |||
1dcaad9726 | |||
14eb1841a6 | |||
e5ee33e855 | |||
bed9b4e312 | |||
118ee5c613 | |||
a90b519187 | |||
d4c5a0c81b | |||
ad51ae4dc0 | |||
95862fa2fa | |||
ea75369306 | |||
2be328e4df | |||
b50be84244 | |||
41a03e285f | |||
5d213e46bb | |||
4c90d8908a | |||
7cfaa86fe6 | |||
cebead1ebf | |||
581a3bb155 | |||
e83b1243bd | |||
626beebdf8 | |||
46d723ce57 | |||
c4d5907324 | |||
7c86d365da | |||
47ac23d314 | |||
db0aa64208 | |||
ffbb3ee955 | |||
d0c637e6b9 | |||
6a38e33331 | |||
9d66d5eae4 | |||
00e302da76 | |||
dd3c8a72a2 | |||
14825944d7 | |||
e84f865118 | |||
f32c5d3716 | |||
33f13ad7c5 | |||
f6bb2099bf | |||
2d755dfac9 | |||
aa7d2fe355 | |||
55194925e6 | |||
c87977a0c5 | |||
390b44eb2b | |||
12515dc49e | |||
5fee9b925e | |||
81483fe613 | |||
67feccd3ba | |||
6320813bc0 | |||
b36ade216c | |||
4d15c85556 | |||
002a6dfc7c | |||
510415ecc9 | |||
e80178eac6 | |||
b378df72ed | |||
e037c2e418 | |||
01758866ba | |||
cece123d71 | |||
2a68d66127 | |||
310dc40996 | |||
fac4caefa7 | |||
87c67efc0c | |||
518bb518d1 | |||
e5a14ddd2d | |||
099a64aa39 | |||
dfbbe8bd49 | |||
fea3738ac5 | |||
4dc964691f | |||
5fef3b15db | |||
1a6fb019d6 | |||
506d2a354a | |||
58705b4903 | |||
31f9acf9ce | |||
10f57e0eb9 | |||
11c649b891 | |||
c131aab043 | |||
98bdfc0c1b | |||
8d2cca9754 | |||
ea00f105a7 | |||
4ef987fab4 | |||
d4df71b2b0 | |||
972c9cf6ae | |||
3e7d4888e5 | |||
4da8b2fcd4 | |||
1d9c8daef8 | |||
0bb92f3a3a | |||
9ab80dd6ae | |||
5c8273d57c | |||
66262451ec | |||
9bcdaab13e | |||
8230107f33 | |||
e9fe413fc2 | |||
107687b5af | |||
e163f73b7b | |||
8a49dfacd6 | |||
5a9b455146 | |||
c01881845c | |||
9556aadd63 | |||
7431842325 | |||
482e1488a9 | |||
f0b922473e | |||
940fe202ad | |||
1d07640b65 | |||
7f554a4f69 | |||
aaf113ed95 | |||
fa8b225d86 | |||
268055bfde | |||
546adc4950 | |||
b271a3034f | |||
6d56fb28fb | |||
5bae927222 | |||
4d4c8ddd37 | |||
6ca224f156 | |||
dd6d3c90ee | |||
c9d6d8a193 | |||
01369fdfd3 | |||
e5cc59c77c | |||
14793a4e37 | |||
1e893a1216 | |||
27f45ccf33 | |||
8231c841ff | |||
9a863b3358 | |||
b54cf3a766 | |||
8c05e42c7a | |||
ed3c566d97 | |||
675ea4efdb | |||
8d833e9337 | |||
d7cf4188e2 | |||
4e3250b7fb | |||
2b2999460c | |||
edfc744918 | |||
14c3dd817d | |||
9fa6213731 | |||
bbe3165f82 | |||
e082631e51 | |||
12510bd5da | |||
fd441eb612 | |||
9938f30d13 | |||
d3da223f22 | |||
b2896d2739 | |||
dc1daacdcc | |||
63766510a1 | |||
95cf6464dd | |||
eb27b338a3 | |||
fe3fec53a6 | |||
33309e428b | |||
bb3a55f6d3 | |||
dae59cb263 | |||
8de2e2e41b | |||
8f0c15bfb6 | |||
f003a91f5c | |||
4523dc8624 | |||
6f843a3355 | |||
359ff69389 | |||
031e2f7ae1 | |||
adc27d6a93 | |||
e4dc25ed49 | |||
d3236becec | |||
3d5fc24dae | |||
1d25e5bdf5 | |||
be19c5ca3e | |||
ddcb189d9d | |||
e05cdb17e8 | |||
70569fadce | |||
878b399734 | |||
734283855f | |||
b3b186262f | |||
4bb9eb5f91 | |||
8b09a900a1 | |||
7bee6c1004 | |||
5e1ca57a7b | |||
e0ef578eae | |||
d478f56759 | |||
528fc51b6d | |||
785bf2088e | |||
ade1552598 | |||
88617d11f9 | |||
c510928a25 | |||
ac223c4047 | |||
64f0109f17 | |||
daab8a564f | |||
8e62a85352 | |||
8721e2eaed | |||
bd4232fac3 | |||
832a239b72 | |||
c4670b8a8d | |||
a91e0bb833 | |||
8eb90d385c | |||
f90efd9981 | |||
cdeabf513a | |||
f0ade787ac | |||
3cc43bff9c | |||
1fb3445658 | |||
b2fc822629 | |||
368cab75c1 | |||
a93c6fd677 | |||
fba551379e | |||
bc34e5227b | |||
508416d95c | |||
3b57e72c0c | |||
d3b88be1b4 | |||
fdbcdfcf61 | |||
89efac81c7 | |||
5b1cd37e44 | |||
ca2d62b787 | |||
94b82d5686 | |||
9dd29dbef0 | |||
6623a528e0 | |||
05d2c61c67 | |||
0db4961c49 | |||
82823118b9 | |||
54a03bc7d9 | |||
74fab8ff54 | |||
a066a90db6 | |||
cc00362125 | |||
1ba5f45132 | |||
f934f1b47f | |||
daa1acefc5 | |||
11042ab914 | |||
0d53d19946 | |||
e5ca291076 | |||
f8fe49e539 | |||
fe0d576153 | |||
d76723ee53 | |||
bf48e5acdb | |||
9eb00af562 | |||
69bdbdb0ee | |||
523506df51 | |||
bd6a3fd7f1 | |||
cd807a5cda | |||
17a1bb570b | |||
bf26c06f12 | |||
e669ffb2b8 | |||
3d814b5dc0 | |||
47410778fb | |||
fc6609d198 | |||
e61059660c | |||
d1ed8d6cee | |||
f7c35ea2a1 | |||
f9365c0a24 | |||
75ae10bc75 | |||
1157618a2a | |||
21ef7ee4d6 | |||
b6bd704c3e | |||
d2992c6bc0 | |||
308528a3ea | |||
c3c0b71f9a | |||
4d4c7d05da | |||
4da281e84d | |||
c9780bb2ca | |||
0659866a09 | |||
07e230d762 | |||
5d96bcbc06 | |||
b1d87fbaf1 | |||
927dc33070 | |||
75d31ceec5 | |||
48ca53cac4 | |||
eb448631fb | |||
d4ac305073 | |||
103e02c700 | |||
8c8195e9c3 | |||
a98b02c112 | |||
0008d12284 | |||
d1c5ae78ce | |||
6f70f00b4f | |||
54ba2f1862 | |||
561fa03529 | |||
8232a0ff48 | |||
ae4e099e7c | |||
5dbeffdeaf | |||
d486ca60a5 | |||
32d6280226 | |||
5ae1eb22c9 | |||
693575c2d1 | |||
069f9989cb | |||
2134c3fb1f | |||
8e48f115aa | |||
b7bd70ddd4 | |||
e867110340 | |||
11819cb741 | |||
c08e112b43 | |||
18b49be492 | |||
83ae1edff7 | |||
018b85dead | |||
a38c4c02e5 | |||
62473695d2 | |||
7cc1147371 | |||
905549ff4e | |||
f741069550 | |||
5be2a2c74b | |||
221ec24e9b | |||
1ef488eaaa | |||
9f8aa6089a | |||
102969c422 | |||
a515f26eac | |||
4677587e57 | |||
1d38852b11 | |||
7e24201365 | |||
e22ac8b126 | |||
0800bedcc7 | |||
11fac260fe | |||
9c7a1fc9b6 | |||
3a7d26bb4b | |||
40098093c6 | |||
eff40457a4 | |||
e651013a8b | |||
92d8ed8ac1 | |||
90e07f0a34 | |||
33f379eee6 | |||
407532f82d | |||
cf2dc1c238 | |||
351bca2d1f | |||
84069fcc14 | |||
e04170697a | |||
6a24cc71ed | |||
d5659f856f | |||
5632e838f8 | |||
52a47aea70 | |||
ae815940f6 | |||
ba8c2680ec | |||
66c9562013 | |||
cdff1bb5a3 | |||
0dc787a9f2 | |||
9ab0b66129 | |||
4348824059 | |||
d681d0dc3a | |||
10b635b773 | |||
15e7c7dca6 | |||
db6bfb9fe8 | |||
f3abf6aa63 | |||
3663e5904d | |||
bc40dfb10a | |||
770fedaf9f | |||
ce93a4c612 | |||
5726a6b401 | |||
3d97ea479f | |||
560bf51892 | |||
60fadf8bd2 | |||
1e5b5ea538 | |||
3585d0ea23 | |||
a492d5331c | |||
806f83287f | |||
fe7fe62d8d | |||
dc05929411 | |||
c49a177bec | |||
7b76d6bf22 | |||
f89ecf7988 | |||
ec1e28ef9c | |||
15316a4732 | |||
f9221e2cf5 | |||
e9f79acb28 | |||
abb2b389f7 | |||
0eb6c189a3 | |||
6afb265b96 | |||
88473c8bae | |||
7463064b28 | |||
542d6abbb4 | |||
b2086b5183 | |||
3c7e2e8f0a | |||
1cf823d8f0 | |||
fb20d4b126 | |||
e355307692 | |||
50101b93ca | |||
fb5e3378f8 | |||
ebbf5d2b70 | |||
9fffc38583 | |||
9b6e2c8b98 | |||
98c7656a18 | |||
6fc5369263 | |||
3fca954172 | |||
ef830cc434 | |||
d1fa94356d | |||
69bb2e1804 | |||
ef7dc2e9cc | |||
ebaf3bcf1a | |||
54662d5958 | |||
d65aea37d9 | |||
4465690cd8 | |||
2f61b3eef3 | |||
b48015b340 | |||
eddc1f556c | |||
47c0cb1a5d | |||
2bff554b23 | |||
1aedd03afb | |||
d331dd3b0c | |||
c75c423952 | |||
9146ef75dd | |||
a7d18a1109 | |||
a751e0296f | |||
340062243a | |||
cea232194d | |||
7c0afdf23c | |||
12d6991cf4 | |||
3c06a58339 | |||
2bafb3d702 | |||
5210225f25 | |||
eb87c6f559 | |||
c4e317814f | |||
78cfdd0cf5 | |||
46a237f42f | |||
0e20b229ee | |||
69b3367f6c | |||
9eb542f2ee | |||
aac578492d | |||
9853830787 | |||
9b6e74a9c0 | |||
4f5ce122ac | |||
4dbc55e87d | |||
09751bf1b2 | |||
6a748c2c66 | |||
fce3b089df | |||
77f37de39f | |||
f7ee88f1d0 | |||
aa9ad6fee5 | |||
670b81a890 | |||
98f3f03bcb | |||
2019256717 | |||
c189dba20e | |||
d9d3b76fee | |||
ac2158649d | |||
8e444e66df | |||
169914ede2 | |||
4dd75a195b | |||
0dd2fd18f8 | |||
f4f7304b44 | |||
135997254a | |||
289af16300 | |||
abcb66c614 | |||
ce24797d38 | |||
409047a2b3 | |||
cd0a852981 | |||
f74d11471f | |||
f96178c529 | |||
1d72b604ef | |||
382b601acd | |||
7f53f78b04 | |||
7d879ad7e0 | |||
211eca0895 | |||
ccf0378905 | |||
3153c83c77 | |||
7ce7a617b9 | |||
8e1d2fc0cc | |||
7f06d94e72 | |||
e4b5d2a83f | |||
b009fd41e8 | |||
d8c6dc2a5a | |||
f44416c823 | |||
ce885c5342 | |||
b03709eae7 | |||
d6e35a2644 | |||
bb6a63a4e5 | |||
26b25e03b2 | |||
ef68c3d800 | |||
356da0f98b | |||
61bf4490af | |||
5a3743da32 | |||
4184cbd635 | |||
91d2347033 | |||
338abb0f04 | |||
6fb9195f6c | |||
482c962de4 | |||
8603c419d3 | |||
a0538e5c8b | |||
47eb4c6890 | |||
546096a5cb | |||
b7b793d1e7 | |||
d94f9b8e90 | |||
52ff891c03 | |||
7b4d495439 | |||
ebf3c04b26 | |||
15664a5f35 | |||
0d3505e286 | |||
0481af98ba | |||
ebee5580ca | |||
8e02217e10 | |||
33b62fba4d | |||
de65c76e55 | |||
cccdfd2243 | |||
d5e7f9632f | |||
a2bb98ba76 | |||
7ba68e0cf1 | |||
ace6d8e3d6 | |||
ee02ac6164 | |||
e16acc80a7 | |||
94d17948af | |||
c09b6306c6 | |||
0b18023d00 | |||
3714fbcb45 | |||
69c13a7880 | |||
2fb9d2596f | |||
6d09c53001 | |||
e54b271529 | |||
7088ce7191 | |||
e0c91cffde | |||
c5b09cf771 | |||
1afd78fb5c | |||
1f934725f7 | |||
0add899baf | |||
d371a9ef4c | |||
00458dc5f1 | |||
65c63a0054 | |||
cc16f95d21 | |||
04159fba42 | |||
72739680fc | |||
533e0325ab | |||
90cfb2666b | |||
7e6d72bb11 | |||
b8e8b98647 | |||
6b010c80a2 | |||
d099b9c9c7 | |||
3b9fd8361f | |||
050f76b9af | |||
1231cab341 | |||
dc474899e7 | |||
c139e58237 | |||
e740873c47 | |||
fe8fc09f34 | |||
a5709636d9 | |||
41e2e177c7 | |||
759d02d1ae | |||
c305e667e0 | |||
d491f5ea07 | |||
1fa9cf6ea1 | |||
fdc8acc706 | |||
f1ed224753 | |||
9c8e7e968c | |||
0218ad5d5c | |||
1142746cbb | |||
b1259ecff9 | |||
9910cbb6f9 | |||
dd8468ef00 | |||
62038c81f3 | |||
0221eb8678 | |||
230356ba70 | |||
ed125c4f07 | |||
28abf260a5 | |||
ed1e674f4d | |||
d1e7c2cac9 | |||
3d33e36c47 | |||
e94005634c | |||
fe1c18ba4d | |||
c95e3a3f0b | |||
17530b2ed2 | |||
5a544a4e11 | |||
f4dc9432fd | |||
447ed29c0d | |||
4adbf387bf | |||
fef381e6dc | |||
9264d29bf6 | |||
2b110e9ba2 | |||
119974e9e7 | |||
671818ab0b | |||
879be4319f | |||
ecc4ee9cac | |||
4e42405f00 | |||
329d63e7be | |||
906fc557b7 | |||
eef814828f | |||
2c9f1bfdb4 | |||
1df046bcff | |||
5afd72a96f | |||
2f0ca41349 | |||
f4d715b0ac | |||
1accb34ce0 | |||
7d089fb9b7 | |||
c2529290f0 | |||
ea08db7473 | |||
7cbc0455cc | |||
2815326f09 | |||
a96355d84c | |||
1df318be63 | |||
5d5b147345 | |||
d9929cbb08 | |||
53cb2103ce | |||
e2b05746e1 | |||
a185dd58ec | |||
5b719b7552 | |||
53753a37d0 | |||
3127ff90ea | |||
7ba3016729 | |||
db10fc6c09 | |||
471e7b2cf6 | |||
56da21392b | |||
12d078ed2b | |||
11998a0364 | |||
beded618b2 | |||
de88ac70f3 | |||
378c7c6ad4 | |||
6aae0e2ad2 | |||
99fe1c6069 | |||
5317dfeaed | |||
af5cd44b6f | |||
a6eff43bea | |||
f5bfcc823b | |||
fd16a39944 | |||
1e20a407fe | |||
23f6d40dd3 | |||
19b2517f95 | |||
e0b16421b1 | |||
3ae7fe2b0f | |||
faf16d4e97 | |||
48229c193d | |||
7a55fa0e0b | |||
6aac70a870 | |||
225f7fa847 | |||
4e0a64a713 | |||
107691cb07 | |||
2b8b1aa6ad | |||
c69f2f8c86 | |||
733b9f59ba | |||
25e65b6dd5 | |||
cbdca289fb | |||
86b41b3895 | |||
d509802993 | |||
19ceb486f8 | |||
64aceb6d73 | |||
2734f2e324 | |||
d29bd6d73d | |||
a22099f552 | |||
f9500261e0 | |||
caba91c373 | |||
bb80333c08 | |||
a84216c684 | |||
619418b993 | |||
8013d7d9ee | |||
09667e9516 | |||
88dd4282d9 | |||
cb227d5cd6 | |||
02112fcb70 | |||
36a255acd1 | |||
bdff0419da | |||
33be431c0c | |||
2e2ed74be0 | |||
617480d75b | |||
ae1a7eefff | |||
4d0a2a608d | |||
6aacb7d861 | |||
e22f2daed0 | |||
f6e2cd0625 | |||
410334ed52 | |||
2ca245f8be | |||
aafa5df0df | |||
ecf7b129fa | |||
b694f1e49e | |||
f302c1e4aa | |||
68142e117c | |||
4279cb1c6e | |||
3d20ed27b8 | |||
58cf6056c9 | |||
99234d5905 | |||
7434b92798 | |||
9bafe049d6 | |||
e2c5993744 | |||
99fc555188 | |||
e9488197ad | |||
2b95ebb4fd | |||
bfe35a6165 | |||
72ee47ceeb | |||
f5f5a61d5a | |||
4901884a23 | |||
cd5b33fbdc | |||
bf949ade81 | |||
e004fd6b69 | |||
a8a2491e62 | |||
16f91451fa | |||
94294e92e1 | |||
caf6840be0 | |||
c7c7c460f8 | |||
483932a3d8 | |||
c8e34a7ac2 | |||
502a67891c | |||
a737e1f1d2 | |||
644f4a2046 | |||
a30e43f61a | |||
afb82d1db0 | |||
97eea85a0a | |||
52371bf449 | |||
47fa106617 | |||
e289f681ed | |||
eede71149e | |||
daffa8961b | |||
65c18913de | |||
1197f1a463 | |||
0caf20f228 | |||
e5b66bb324 | |||
2d86a96220 | |||
5c0cbdb107 | |||
1ff595d218 | |||
aa2b05d9f6 | |||
b548f0f156 | |||
4e689d8171 | |||
dd55fc0df1 | |||
aa6e1b21e5 | |||
a97c7a8bc4 | |||
2e4e43a691 | |||
b338e9f668 | |||
7fe1ffdafa | |||
7f9dd87922 | |||
e6f68f62e0 | |||
8c55753c68 | |||
00bc8390d8 | |||
1e1c4c5eac | |||
c5d0b12a4c | |||
df6c4f722c | |||
2cd6ce21f3 | |||
416449eaba | |||
1af57f5d32 | |||
270f8bfe00 | |||
0b77301bf4 | |||
74339f814c | |||
5feebddd86 | |||
8ca4771dd0 | |||
5f03e5126d | |||
64568c7171 | |||
33b4ae1114 | |||
7f07c1cdb7 | |||
a46a848296 | |||
2df546e17f | |||
5d93460024 | |||
22233d43eb | |||
f97fe35857 | |||
fa59e7beb2 | |||
9e20442298 | |||
a8d5eb6dc0 | |||
5b0672a26e | |||
5d35a9531c | |||
52e011cd2b | |||
2e197a7592 | |||
03c1f14acf | |||
d90d441c33 | |||
102fdd2e07 | |||
a47fcbe6e4 | |||
d26ec88009 | |||
188e9e28c5 | |||
7cd5d5b299 | |||
064952fc34 | |||
69ae93089c | |||
c960939858 | |||
6d0a40166e | |||
ecbff141a1 | |||
f0d4d398e2 | |||
97c8aac9c5 | |||
04d12d6590 | |||
ba7d318504 | |||
47c88d16ba | |||
8cfe386b78 | |||
6cf8d96fa2 | |||
5144219b7d | |||
cb8fb7f861 | |||
b57913f205 | |||
edc23840b0 | |||
0e59f7ad67 | |||
49f38e2de4 | |||
a0f521b56c | |||
44ccb7629a | |||
aaa3c8065d | |||
59b519ab7e | |||
133a4fda59 | |||
f1aa299443 | |||
0b689562ca | |||
8c9ca6f095 | |||
fba8e4c3d0 | |||
2d677e5b15 | |||
39c5392d68 | |||
70a890d42f | |||
18e1ba1092 | |||
848a17c274 | |||
936e58851a | |||
8585d6c04a | |||
826ef0e5e5 | |||
0377ac98dc | |||
5a357fa477 | |||
fe069dce62 | |||
e706aaf3bc | |||
f16a4660de | |||
c108c8c2f2 | |||
bb2feec17f | |||
6d99f31dda | |||
6e08cbdf38 | |||
e60e9cc20e | |||
a850356d1b | |||
e5d99d378b | |||
5f586f55a0 | |||
3a7f0908b6 | |||
dd9323b7fb | |||
d582992e80 | |||
a1989cf7b8 | |||
256c2dc42c | |||
368a50d9ee | |||
3d49f7220a | |||
4070c9e09f | |||
d4e2d15a8b | |||
de94c0eace | |||
bc062ad001 | |||
0d9af06e36 | |||
b65528360f | |||
b79f9c075d | |||
6b79818bfb | |||
c3ab08844c | |||
f91371b948 | |||
204aa2d24d | |||
0324e8fc6b | |||
87094fc2da | |||
d0e5d35700 | |||
d5904220bc | |||
70b052b209 | |||
2fa3cbadcd | |||
6a7bc9d118 | |||
6053950632 | |||
9616882780 | |||
b89c731228 | |||
477673d6f3 | |||
9c1e657a8f | |||
15f3e1e056 | |||
f2acf763e2 | |||
c364b7ef51 | |||
57dcb6575b | |||
8ff06de10c | |||
bb6832d552 | |||
801ed010bf | |||
1cb12f3339 | |||
a1ca398ba7 | |||
43a2220f19 | |||
0282f6799f | |||
9e1947cb48 | |||
963d02a24a | |||
8e0601f568 | |||
6d52b6a5df | |||
49ac1d33bb | |||
953aa54e1a | |||
95356789ee | |||
5489899812 | |||
a84fd3bcc6 | |||
ad9322da03 | |||
80cde95eec | |||
62af4bdd42 | |||
7e39198978 | |||
93e0b28dbb | |||
5980e0d442 | |||
bf0d4c8491 | |||
a1cac26cc6 | |||
59bb0aa93e | |||
8e97852919 | |||
d250f90359 | |||
a819e2b3ef | |||
279a2e637a | |||
13158b9910 | |||
4cd66e7d6b | |||
bccc37fdc7 | |||
c331551ccf | |||
9152904c11 | |||
526705fd3d | |||
2ba582ba4c | |||
1e951c6473 | |||
9a3e3ca2ba | |||
49470cd445 | |||
94389e7c81 | |||
cb6551447b | |||
6468784dd2 | |||
e9525a8a02 | |||
534ff90dbd | |||
5cdae0f6fd | |||
cbb5de8b83 | |||
e4f8baa88a | |||
bbffb02383 | |||
22d5507493 | |||
a94f911072 | |||
e2b11e4211 | |||
6d43585a68 | |||
f664304836 | |||
8dc3240f5f | |||
d2f0f81954 | |||
5a3569774f | |||
b04538d99f | |||
b269976979 | |||
db6952b2b2 | |||
f1cd2d93c2 | |||
63ac4f1ade | |||
c4566ab429 | |||
40b1e1ec58 | |||
f700406957 | |||
f2bb7fef7a | |||
914d512551 | |||
4c996deb4a | |||
a643157d5a | |||
7a14acdbe6 | |||
37be11994f | |||
805b789a69 | |||
a317a553b8 | |||
f3a9680791 | |||
52a9436aa7 | |||
265644367f | |||
4fa268738c | |||
d895804b5a | |||
b180c681bb | |||
4c217a4c34 | |||
5493ce7af9 | |||
db69bf608d | |||
3dd71461e2 | |||
b8505ecbf2 | |||
71b7672b67 | |||
72871b132c | |||
dd15f4f457 | |||
14228447c9 | |||
5a6dce70d7 | |||
0e5e2284f1 | |||
5951bf467e | |||
ab795f0d77 | |||
c3b4e4ee36 | |||
92e2cab96b | |||
cf0983213c | |||
b722d4560e | |||
3593ebd3f5 | |||
fbfcaec8d8 | |||
34c319970d | |||
7cdb096903 | |||
59d85a2a05 | |||
87e629756f | |||
482d549906 | |||
a2ba162cda | |||
311531c9de | |||
4090b6973b | |||
b9fa3ba0ca | |||
092bf77e8c | |||
fdef940afe | |||
522010b573 | |||
e02f75c9eb | |||
196cc525e2 | |||
2eebac2c49 | |||
ab99efc817 | |||
6d7a62d74d | |||
8c8c8c0e16 | |||
9364bf465d | |||
844c3f0b0b | |||
22f69a85ed | |||
68e66f2987 | |||
4179b4897f | |||
1e06eb9b5d | |||
c62a999c6e | |||
9cf68b27d5 | |||
169a15ebd6 | |||
7ab6aafa58 | |||
b0c42a53c9 | |||
1c4d6f46be | |||
7531e4b66e | |||
e9e8adf1a8 | |||
04155bdad8 | |||
364bc11fe5 | |||
17c13e60fd | |||
38fc4dbbc2 | |||
26a0f58da8 | |||
4320815eb9 | |||
b0c09ab879 | |||
257ae76ba9 | |||
7bec8e7fa6 | |||
e2e1a03f6b | |||
76655e8a28 | |||
32f67888d8 | |||
cfd781ea22 | |||
2e03115d0c | |||
9160068ac6 | |||
332ec963bc | |||
d1b10fc6d8 | |||
5a7e52bed2 | |||
b98db1dd70 | |||
771c758e8a | |||
f3cce896a8 | |||
151b6c2dd7 | |||
4589bca829 | |||
71f82d032f | |||
5f11669586 | |||
f5fed74fb2 | |||
dc26b23ebc | |||
0c18c059a1 | |||
465a04abc6 | |||
f7ef64be0c | |||
3450a304aa | |||
d425f65127 | |||
2508df0272 | |||
a02912019a | |||
e43e2a17d2 | |||
299e2c4561 | |||
42f44e84eb | |||
46eb6e31ef | |||
2227ea175f | |||
48b3c7da6c | |||
cb8388df5b | |||
0f6d3ba6bd | |||
1b850d37f4 | |||
54beed24d2 | |||
118a2e8bde | |||
95e0321c4d | |||
847a9e5d4f | |||
839a66349e | |||
54a3917115 | |||
e0d4a63c09 | |||
e6545201ad | |||
a9414b86ac | |||
8446b388b1 | |||
2279289e95 | |||
4c6ac2da2c | |||
1d5fbd45c4 | |||
0623669fc6 | |||
7b55441db1 | |||
f63add4aa8 | |||
f6d25d7878 | |||
4bf0c6f38f | |||
c00c7382dd | |||
feeb03bce6 | |||
c1fa951d7e | |||
45a187cc34 | |||
fcc07e980b | |||
2a2112a429 | |||
61a7660516 | |||
4f4d2017a3 | |||
88fce1219e | |||
8e118e8490 | |||
c1ea48a8f7 | |||
9a2a4f9544 | |||
414abf159f | |||
ea8b9271b1 | |||
cafd9828e8 | |||
d2c9908076 | |||
3951eeb6d9 | |||
19bcc73e70 | |||
824c621b76 | |||
e5b32bffd1 | |||
cd663df710 | |||
628d81be6c | |||
b2025da38b | |||
a812789c26 | |||
6871d0cec6 | |||
57c3451b2e | |||
8102570374 | |||
6db01a7308 | |||
81ed96a9b2 | |||
0996dd3d6d | |||
56550ea718 | |||
d5f4b8260f | |||
a20f70478f | |||
b243012cb3 | |||
719630eb48 | |||
d73dbafc2c | |||
6594afc3cc | |||
4e95698349 | |||
a437390310 | |||
89b43f80a5 | |||
14cc08de23 | |||
bde35a2a93 | |||
1b31224e59 | |||
82fd285e46 | |||
e6b971fcf5 | |||
22eee7f455 | |||
f08b4013c3 | |||
b269441be2 | |||
6cb77966ec | |||
28e8f0d5e5 | |||
132bf25989 | |||
f12fa9ee6c | |||
82512e008c | |||
6d1c9c527e | |||
ddd164d026 | |||
39e12650d7 | |||
c5c0548d79 | |||
c0c2a37ac2 | |||
a0dda6023e | |||
5644419d04 | |||
d637a267d8 | |||
3cf14f88de | |||
58840e62a4 | |||
68e15e0c23 | |||
a548f3e0ad | |||
573c5e50ab | |||
642a40019c | |||
3994ae510e | |||
923cd87ac8 | |||
a039a1fcf9 | |||
ea7811b37e | |||
d21616c039 | |||
e585210e1b | |||
dba94e3a85 | |||
c7d0e61016 | |||
5020774aef | |||
fc12b6fdde | |||
2e36527f23 | |||
8a4394d1c1 | |||
861794b60d | |||
c47679d040 | |||
b362acf575 | |||
3c80fcb591 | |||
3007752461 | |||
38ff7cabb6 | |||
a587b5a786 | |||
f894081dea | |||
b25fd24c00 | |||
62f2c1b509 | |||
9f19161172 | |||
7240cc4b65 | |||
9218c6a40c | |||
4fe788b1b0 | |||
c685450880 | |||
3f267a1128 | |||
483fa7f42d | |||
dff5e49e51 | |||
39edfd5cbc | |||
a65ce7f831 | |||
5c2f7ff018 | |||
7652ce966f | |||
4730c5e273 | |||
1ba947cf15 | |||
dc2a073036 | |||
5013802862 | |||
b2309ad822 | |||
ad16f748f2 | |||
aab55b1d6e | |||
9210c68d2a | |||
c9e40ae8ec | |||
9ad2d5ea71 | |||
2de37c536d | |||
dcc5fd5fd2 | |||
122ba1f7b5 | |||
58300f4743 | |||
0938e6ff55 | |||
13e1331247 | |||
f442313e2e | |||
6e773527b6 | |||
cd42415fb4 | |||
836e25c51b | |||
6863df3550 | |||
2782db3eed | |||
e2df6c3972 | |||
ecfc47c066 | |||
4300f8442a | |||
3964fc2aae | |||
4b3f765a2f | |||
0b5fcb08b5 | |||
0ad6090bdd | |||
86d174b724 | |||
cd57bc41bb | |||
690eb05719 | |||
60ca94769c | |||
b25b727494 | |||
cf1f5389ec | |||
f7c4d63e35 | |||
5ee90326dc | |||
958a5f5dfe | |||
e8772a7af5 | |||
3745e2693d | |||
c96e184cae | |||
462f5cae0f | |||
c15087d17b | |||
53692df2b8 | |||
394d5d31b0 | |||
44e07da8bb | |||
901f2f6742 | |||
b5495024ec | |||
c72da1a22b | |||
30cf618eef | |||
1b32b59f9b | |||
e35d65a78a | |||
35af754b06 | |||
034a7b7bcc | |||
f1abc2d0e1 | |||
a1aad71601 | |||
d385784f89 | |||
569f8d188f | |||
7bb544a4d1 | |||
09420b7648 | |||
2e99b1e383 | |||
9a7f1ce8b7 | |||
84d06cdc06 | |||
26c4f98ffd | |||
89519f662c | |||
fde07fc356 | |||
ce4296cf2b | |||
8c81fce4b0 | |||
ed953e1076 | |||
48bf2fa8ba | |||
ddaf1f62e3 | |||
9198c13e34 | |||
858119f6d7 | |||
e537784f64 | |||
2744383cbd | |||
c6617d1e4f | |||
bf12013f1a | |||
28e29ee38b | |||
6131807864 | |||
42b30bcbb7 | |||
e94fb44042 | |||
76593c09bb | |||
c8243933c7 | |||
9bcde4d531 | |||
db91988aa1 | |||
ae22751f9b | |||
30419e7e1d | |||
584a0d13f2 | |||
49cfd9032a | |||
d052cc0382 | |||
2daae3d1d1 | |||
1424303384 | |||
3099d4faa3 | |||
d4bda9b045 | |||
20adca9006 | |||
960f466d1a | |||
3d92c0a784 | |||
44e03bfdb6 | |||
c83d602ad2 | |||
25f9326561 | |||
f5c73f69fd | |||
dd4048d1c7 | |||
24119d9d7b | |||
e8d5a423ca | |||
d20fa3cf9d | |||
52182e3b1f | |||
2435feaa20 | |||
204333b015 | |||
2be927f3d1 | |||
540cdc11ad | |||
1b0d9545bb | |||
36a7eb6876 | |||
7cd5dbcaba | |||
271cb303a5 | |||
68ffe095a2 | |||
64cc539fd2 | |||
0171dbcb42 | |||
47957485b3 | |||
6c9fc42e9f | |||
7367d88261 | |||
9614ad3ce0 | |||
fcc7c12f11 | |||
eefadd18e1 | |||
8de78218c5 | |||
dcc0a86f2f | |||
f3b964a07e | |||
259490e572 | |||
41376b58e6 | |||
816147e7ba | |||
5291828df8 | |||
aa2faac03a | |||
66b209b86a | |||
8ddc20b896 | |||
3639dfb3a8 | |||
3860220bfa | |||
1218b3ab86 | |||
ea305a68fd | |||
72b3091040 | |||
ef486a9ecf | |||
98164e9585 | |||
bfcc6e2a68 | |||
af107029b1 | |||
c691e918f4 | |||
92ccd7b752 | |||
a8a0ac3234 | |||
948e8ac534 | |||
cc930b7472 | |||
1dd4e74522 | |||
35381b13da | |||
8779c141da | |||
eabacfd9cb | |||
14e7b8344f | |||
6534d436a2 | |||
9bd342137e | |||
ec59da6015 | |||
bf238b7137 | |||
0491d39297 | |||
e54385b97a | |||
fb52938eec | |||
a49b55d52e | |||
ae1db7b31c | |||
27d578d904 | |||
f59d15bb42 | |||
3e9e82c0d8 | |||
55b4ad0ead | |||
38e95844e8 | |||
7e5aa13d2c | |||
0ec9949f78 | |||
4f3d6d0261 | |||
fab78a0c3d | |||
462b4e8dfd | |||
fb79f5bff7 | |||
4abc57848d | |||
3dfd30598b | |||
cfd409ed09 | |||
7730f85594 | |||
5f70859c15 | |||
116affac3f | |||
3d8cbbf2c3 | |||
097ea2c848 | |||
1c57cc70ec | |||
486f4bd183 | |||
9fd1902762 | |||
77e522caae | |||
55144ccb0a | |||
4f98ce5865 | |||
59c7b88198 | |||
066d5234d0 | |||
8c2efa5d76 | |||
c4ba579397 | |||
3a63c6a48c | |||
7455e05e4e | |||
00ea64ed7a | |||
8bedae4599 | |||
3d1bda6b5b | |||
3270ae82ac | |||
494d314a05 | |||
6e0e288779 | |||
a5828ae6b5 | |||
8775279891 | |||
074d162eff | |||
04fe4d75fa | |||
e4de4502e6 | |||
aa1b63971a | |||
0c4542738e | |||
e901de6816 | |||
f63b88867a | |||
5be1c70518 | |||
8588aa8657 | |||
473eb54151 | |||
4bc948a743 | |||
e196890735 | |||
84bc81478e | |||
bd5fba827b | |||
2d897529b2 | |||
799df2e406 | |||
ca56dadb4b | |||
f1121499e6 | |||
4c8e3dca6e | |||
53204061ac | |||
b2a51c1b03 | |||
a4a4439fdf | |||
cd27f604e4 | |||
96099726dd | |||
e4fd06e7e2 | |||
f89b4f2bee | |||
174791f0fb | |||
2fd9eda462 | |||
a68e6cea59 | |||
beb06145f8 | |||
32a56dfb99 | |||
9799889f2e | |||
75555676ad | |||
42efa1231a | |||
98fe9e666f | |||
6d875d19fd | |||
13d7ab6b5d | |||
56a57652ef | |||
6c46f864e5 | |||
834845142d | |||
68b5c3aa48 | |||
e8df3b6c6c | |||
241b5d3ebe | |||
408985d301 | |||
1369935987 | |||
b0adcc311b | |||
c21ad4d941 | |||
8c4abfb8be | |||
2aec3bc4b6 | |||
0af760e261 | |||
d3c7bf73bd | |||
ccae01cab8 | |||
2a15964128 | |||
13d746a303 | |||
dab3247734 | |||
f25e33c156 | |||
8278f87022 | |||
2f176de687 | |||
1ecef023a9 | |||
5b888ad949 | |||
be7935ed8b | |||
58d581c344 | |||
921846fa22 | |||
068cb92300 | |||
85c787f1e9 | |||
f6a7e896b8 | |||
929dc48e96 | |||
9b7e82b940 | |||
4dd8469336 | |||
df4f9e28f6 | |||
c0698df057 | |||
ea7e63921c | |||
12604a8d0c | |||
93c3d297b5 | |||
f451960708 | |||
4f0ba2d533 | |||
f01623b2c9 | |||
3ed77c4792 | |||
ec125d1bc1 | |||
9889cff6d6 | |||
ada7c5fae5 | |||
28714238c8 | |||
18aabfaee5 | |||
fbad3505ee | |||
6ee353d42f | |||
660dd97a62 | |||
12bd17521c | |||
700696bcfc | |||
273c9901c2 | |||
09fe8ca92e | |||
90917373cd | |||
c0b27e3964 | |||
cdc986a7c2 | |||
bbabaad298 | |||
23c781f173 | |||
5f308a89d8 | |||
75f5efcba2 | |||
0b71d789a8 | |||
fe8885258b | |||
fa42d191c6 | |||
5ff5a30652 | |||
81afdf7a2e | |||
333899e1e3 | |||
1ad69eb0dc | |||
b1473019e8 | |||
b6e3d27434 | |||
cd52e0050f | |||
0c4fd732f0 | |||
ae8cf74d3f | |||
bde8b9f34c | |||
37a2514364 | |||
66f52fa26b | |||
36e834abc1 | |||
85b87a5396 | |||
2b08101204 | |||
6fab35f748 | |||
712b0ed6ec | |||
225365fb51 | |||
140045821a | |||
cadae717d5 | |||
09e72204f8 | |||
1c8f5dfa42 | |||
d228b6b231 | |||
d166e8c1d4 | |||
f277234860 | |||
48923e8356 | |||
682bbad64d | |||
628c13ccee | |||
3c8e6dda21 | |||
6eea44cee1 | |||
ccf6861b72 | |||
dddb420535 | |||
2638e33c82 | |||
845d6030f8 | |||
3da165ca28 | |||
f47c3328ef | |||
18decfd11d | |||
d590ae5560 | |||
608cc4f273 | |||
6fe12b5215 | |||
702110aac6 | |||
c7ef8fe608 | |||
0f1da600e6 | |||
bfa9148ff7 | |||
11875561bf | |||
7dd0eaa39c | |||
edaf10dd26 | |||
77645b5daa | |||
f279894d28 | |||
9ebd7fe158 | |||
48960894f5 | |||
c937d70bfb | |||
6347d649bc | |||
2803d800d2 | |||
c4ff24bbb3 | |||
a9926ecd54 | |||
20e416409f | |||
01168a9d89 | |||
b865734760 | |||
30bb8088af | |||
00f68732e5 | |||
029bac01a8 | |||
abc3c87f3d | |||
d6da8b328e | |||
752b3ef972 | |||
bed3419925 | |||
26c7974376 | |||
0fabafd0b9 | |||
20b031fede | |||
6325da14af | |||
fbf20aeeef | |||
60bb5f2f5d | |||
339bce27f4 | |||
c9fff00016 | |||
f62312e028 | |||
966e671106 | |||
d68fccef86 | |||
45df6c4d75 | |||
dcb11fc622 | |||
dc24948be9 | |||
15af6e6fee | |||
b9554c03a0 | |||
bf4bb9f9f5 | |||
1c881026a1 | |||
41f3c9949f | |||
3677773371 | |||
c8d693e1e6 | |||
fbc21e3fbb | |||
3a837b58e3 | |||
5476e1efde | |||
b664e9ffa1 | |||
27e35ba6c6 | |||
726b25a91b | |||
b1056f60b6 | |||
1b5b8cf072 | |||
a43a2e6c2a | |||
5387fefadc | |||
329fac3a36 | |||
6ab3b8b8b8 | |||
2692c2f6fd | |||
5f0879f54b | |||
63a8f0e9b9 | |||
c1442410d8 | |||
0ccd713cb6 | |||
980f525c3c | |||
7a3ada1192 | |||
31bda9a237 | |||
b4d941420b | |||
577dc49696 | |||
47410aa837 | |||
570df42610 | |||
f89f46b704 | |||
83171ede22 | |||
b9a43869c9 | |||
2283e0e9af | |||
483e09e810 | |||
e68f62be8d | |||
726b11d68a | |||
e9b4c483c7 | |||
d494433d26 | |||
fdf3a27ca9 | |||
9e634a91c8 | |||
9bdccbcda7 | |||
f712632a51 | |||
78a26cb720 | |||
aa2d3dbdf5 | |||
dadc91ff0c | |||
77348b0e6e | |||
69571dfe21 | |||
0871fb9af5 | |||
5bd0b21bf7 | |||
8b4701ae4f | |||
c1760352e0 | |||
cbe81e653f | |||
8d12851342 | |||
b76bf27f6a | |||
797c359978 | |||
a39b4003f0 | |||
588e4fb191 | |||
47eebd2fd2 | |||
1cfc5a850c | |||
0ddf8ceac0 | |||
9d336655ba | |||
a1db097e10 | |||
669b458755 | |||
452d26448d | |||
8e16effe97 | |||
b081547ec1 | |||
15ae82d5d6 | |||
fcd19b09f8 | |||
ff03836b9d | |||
29fbbf43a0 | |||
940b94f35c | |||
15268d12be | |||
a98e0f2d31 | |||
8c4b7503d0 | |||
4f2009dce2 | |||
a7556c3bde | |||
0917763d67 | |||
eb10e637cf | |||
3f7ba60350 | |||
9334ea8e92 | |||
adcd9f5472 | |||
feb9b7792f | |||
2ef579e261 | |||
1679d60bfc | |||
dbf387d550 | |||
00611d8440 | |||
1eb4136ac2 | |||
f78cf97617 | |||
07c9a7fcb5 | |||
bd24aa2f97 | |||
da09f65127 | |||
a35df3371c | |||
f3845257a5 | |||
829514c515 | |||
ee82a487f6 | |||
636a0aeedf | |||
90563aedca | |||
727331dce1 | |||
328c109303 | |||
8b25dee615 | |||
006c5f79be | |||
60f8121940 | |||
3c12d0b885 | |||
2c873f9791 | |||
f15eb7c1cf | |||
e7884b353b | |||
45a2686441 | |||
ebd73f50c6 | |||
94f6e3e283 | |||
e4e68081bb | |||
0628636d0c | |||
d7bdabe52f | |||
e4f4299859 | |||
3f01e56686 | |||
6ff7f46039 | |||
2d1142a3e8 | |||
a79fd20c71 | |||
8f80393c14 | |||
42ce4c7930 | |||
97d1dcb1ef | |||
06214d171b | |||
92ac04b8ee | |||
d60b6a96f0 | |||
4bd06fd490 | |||
c753e2a7a8 | |||
bcf08f33d8 | |||
c735d7470e | |||
b1726b1a38 | |||
8b1a5f33d3 | |||
804963848e | |||
9fb2a1fb08 | |||
fb049fd85b | |||
6eed462c8f | |||
9b77cec89b | |||
6b82d3eea6 | |||
22539ec3b5 | |||
0d58fef58a | |||
684dd4c2b4 | |||
f011795891 | |||
d3a035b055 | |||
a21e27ef6b | |||
59ec22464f | |||
f276e2a469 | |||
488acf15df | |||
39252c833e | |||
5d683c3f4b | |||
d2ecddc981 | |||
368d278249 | |||
dd72154149 | |||
9bcaeb71a6 | |||
9b46e9c9cc | |||
a76d90670a | |||
5712d62ccf | |||
3e885f0277 | |||
8c2462d1fe | |||
27e25a8cbf | |||
389ece4022 | |||
bbaa45c3aa | |||
32b7385e43 | |||
d6ab8b1929 | |||
16950f8384 | |||
c85eec7fc3 | |||
c809798b2a | |||
c45dc9cf30 | |||
e900d494dc | |||
1108cea7f8 | |||
b1e079807b | |||
a926c4b904 | |||
780aa0a21e | |||
fa9ab027ba | |||
9b27b49240 | |||
88bce0e24c | |||
937032e14a | |||
482c119186 | |||
c6102b7585 | |||
f9f2520108 | |||
466f94ec45 | |||
59ace284f3 | |||
0199c68d01 | |||
938ecaa42f | |||
2f794620f5 | |||
02fb21617e | |||
7e94720c1e | |||
e5abed92f5 | |||
04703f64be | |||
c9f94ab4fa | |||
9d5b1c06ac | |||
a5cdca4520 | |||
fa153c1cd7 | |||
9ff6b74bb7 | |||
9c7650c45c | |||
d8bd08066d | |||
4755fed0a6 | |||
733ad2e15a | |||
17665167bb | |||
75ace8329c | |||
f07871d302 | |||
59934417ff | |||
ddfe900612 | |||
3fca1fc651 | |||
e8a8e7ff98 | |||
f3ad2bf471 | |||
762ccf9906 | |||
9e9c7dd6f1 | |||
c0eedbc009 | |||
a38cb9878a | |||
e89f89361c | |||
8c891eed3a | |||
42d906bec4 | |||
acc1c4d5d4 | |||
41abfe15d9 | |||
0a9dde4a04 | |||
9d9cf23031 | |||
de8dafbada | |||
98ea309b3f | |||
3803a3a099 | |||
0c5d83b248 | |||
1d4f2316c5 | |||
d051ed77ee | |||
773e25afc4 | |||
dadf9e519d | |||
f20aeed235 | |||
6a7bf0ddb2 | |||
f2d156dc48 | |||
171675a6c5 | |||
6a20b9b9ef | |||
f0e3c7f831 | |||
3e52ab222a | |||
71e83b2e7d | |||
5731e40409 | |||
77341365cf | |||
1f9696019a | |||
a25314c1ec | |||
2cc543deab | |||
359f0d754a | |||
1e79f97326 | |||
3e6046edad | |||
f1ce6c191e | |||
fb7fa4a1fd | |||
4527ecdc8d | |||
4513f6bbb1 | |||
dfc3c2b224 | |||
b6c90a2a22 | |||
61b159e219 | |||
4cc0e8794d | |||
77db59c2f9 | |||
f6ef8baba2 | |||
6254fa1359 | |||
5198426d91 | |||
a0a2d75d3b | |||
b65b9ff1ff | |||
aac006aa99 | |||
d5922333cb | |||
b778c1eef5 | |||
93da9662d7 | |||
53ac9ac9d3 | |||
2d436678a7 | |||
635ff67590 | |||
8ff9ec4be6 | |||
9d36b1e9c2 | |||
4f985d5aeb | |||
dfbdf8acf9 | |||
71217353da | |||
40a2eeda42 | |||
13f6beaf9d | |||
c8af1f475a | |||
64971f0ac0 | |||
897d28bcc2 | |||
4fc7b2276f | |||
801e896683 | |||
a4031f6dc0 | |||
e93f5c6878 | |||
a08832f16e | |||
9536d1b14d | |||
9874ff5926 | |||
42df89bc64 | |||
eb9071912f | |||
4f37d45706 | |||
39835409d1 | |||
59e1205d16 | |||
6eda9ac9e5 | |||
1d18997007 | |||
cc9f0916bd | |||
810372f881 | |||
af9b1e9aba | |||
de82095a95 | |||
5189bb8724 | |||
a2d474adf3 | |||
8c29b49794 | |||
30b29f044a | |||
22f2bce651 | |||
973e20b83f | |||
6cd7f9dc29 | |||
d03553ecd1 | |||
15bf48b987 | |||
18e3f5a944 | |||
97b8294474 | |||
e4c7b33747 | |||
9feea34810 | |||
b7a6f163d6 | |||
68efed8c8a | |||
2b1fd947f6 | |||
97d5ba6a39 | |||
27dc071b9a | |||
bca362c1f9 | |||
5c327502db | |||
a534cf4f4d | |||
ad6b5fefbd | |||
7da7ef6d7a | |||
413e96f41e | |||
be8fc53e36 | |||
85db79a96e | |||
c24b7f6736 | |||
61ff12fa50 | |||
bc50d6c91f | |||
fde55b0906 | |||
9c2c0a8256 | |||
448a39e65d | |||
90cb1c47c7 | |||
c4cc083169 | |||
0fac156523 | |||
6eaf624dea | |||
076b444a62 | |||
9b19a58f66 | |||
862c723d18 | |||
47409e75f5 | |||
eb36135af7 | |||
fc0c7d5e9e | |||
a29a8b7574 | |||
2c0aa2ce2e | |||
bae5b4aea5 | |||
1d410cd8c2 | |||
9e3cebd97c | |||
71ee81cd9e | |||
ae70e34f23 | |||
7cdb968254 | |||
f08b6c553d | |||
a093f0ba95 | |||
6885cd7dc5 | |||
018b9deba5 | |||
f7d42ceec5 | |||
30291525d9 | |||
080e295248 | |||
efd2600e6f | |||
03efadb774 | |||
8380dcd700 | |||
45ee13b942 | |||
680ff910b0 | |||
098c173f2b | |||
2bc1a87e42 | |||
98c431b6f9 | |||
ad5df6b782 | |||
765dc16888 | |||
2b0e14f640 | |||
679b5916cd | |||
134768cf53 | |||
15c9649730 | |||
ec8e7760ac | |||
e8c58f894b | |||
35a8a3547a | |||
1615c567b8 | |||
c97733435a | |||
e37d0b8730 | |||
84d544943c | |||
8ef50d9958 | |||
2f4ba2a867 | |||
e6362826a0 | |||
b7bb322cba | |||
bcaaf972e6 | |||
381dac2349 | |||
294e949fa2 | |||
7eefa1349b | |||
8b48981987 | |||
42342b3ee6 | |||
60ecad090d | |||
b69bed22c5 | |||
27d7c8599b | |||
440acfbe0c | |||
0806279428 | |||
dfcd905069 | |||
c7b1aaf6d6 | |||
9e409d7e07 | |||
a5ac31b5b1 | |||
58e2ce9112 | |||
2856089e36 | |||
c7d6d419b0 | |||
95ca1f987e | |||
a4fea08b6e | |||
557ac0350d | |||
5ced7c3da0 | |||
cf8937acde | |||
7599730b7e | |||
0205bb13d0 | |||
19a0acc83e | |||
3b14436364 | |||
dd23022acb | |||
6a9372f4ef | |||
1fd9ae517c | |||
cae70acf24 | |||
c80dd3967f | |||
8d87e338e1 | |||
fb0882648e | |||
db89a82b5b | |||
60127996b5 | |||
9aebc4708a | |||
796c248dc1 | |||
f918a89e50 | |||
4669917e8f | |||
ef83970059 | |||
fa6edee776 | |||
3226725507 | |||
3f96d75ef5 | |||
93a7d9835f | |||
ed644d1666 | |||
f1c462ea41 | |||
b3970c702c | |||
83befd3724 | |||
16b1985be5 | |||
be18153b97 | |||
ee4e22554f | |||
822ee894f6 | |||
8388a64cd1 | |||
8198907795 | |||
36a317929b | |||
73c01d25fe | |||
d162b25f95 | |||
6c280b4142 | |||
4a5ec7d166 | |||
fe2f4d0031 | |||
203c872c4f | |||
1b6b902d95 | |||
089d82bc18 | |||
05b85c6eeb | |||
bea433655a | |||
47325e8533 | |||
fbcfc0cc17 | |||
d9d015df4a | |||
fa5e06d690 | |||
98d0d08128 | |||
2f620a4f19 | |||
9fe37e7bb9 | |||
04264d4079 | |||
112e11126b | |||
28cc00a13d | |||
bfc2a36ff2 | |||
3cf5f221be | |||
96eaffebbf | |||
498bb5b82e | |||
eab0df0e5b | |||
1fb5cf0da6 | |||
83dff3eb2e | |||
5a3b130cad | |||
8d00d7c3df | |||
1fdc383c5c | |||
e8b63005c4 | |||
c1a09119f6 | |||
d7f92784c6 | |||
72a2bfcaf0 | |||
c0ef139843 | |||
f90fca638e | |||
2f9bbb6d91 | |||
e30c5ee76c | |||
a4b6d202ca | |||
0b72536a0b | |||
4bdde337f4 | |||
22ad8600c1 | |||
845d15d4d0 | |||
0e5c950267 | |||
4c3e18723c | |||
66e871b664 | |||
49656f9445 | |||
8782bfbf01 | |||
644d85e751 | |||
453e149c8a | |||
cf2870adda | |||
eecc5f0775 | |||
d9e1cd555d | |||
2b8cef2307 | |||
788f488b33 | |||
073552d7ae | |||
aa08688362 | |||
6a393f36d9 | |||
8dbabb31df | |||
b2ace18759 | |||
4151fdb1c7 | |||
f9fb9063fd | |||
62fb47a4d3 | |||
1ee70a916d | |||
2ce8de6bf9 | |||
7bfa022993 | |||
02feca721e | |||
df26861c56 | |||
8b327f1784 | |||
16a8055dae | |||
a11571bb7f | |||
40876260ef | |||
b17eb5b4e4 | |||
9ba366f12b | |||
6dbbae17d9 | |||
d8d77153ea | |||
b9d147fb15 | |||
1ff21c05ba | |||
f9dbb64fad | |||
2d02bc91c0 | |||
97f4b4c4e7 | |||
3831132ace | |||
779412b9d9 | |||
afa80f534b | |||
f9f30a0310 | |||
7c99bc23fc | |||
12aa5552a9 | |||
cafc587a1d | |||
e5dcd78418 | |||
d5bc7c60c7 | |||
8389855a9b | |||
1c3855f33b | |||
2891b434ac | |||
b130aef65e | |||
0a7e3642bc | |||
fc150caf67 | |||
3a3f54dd0a | |||
45bef5c064 | |||
78232bf65d | |||
011f3fd5cd | |||
a78a90324d | |||
cf98f2e8e0 | |||
57665086af | |||
eb3fd99efd | |||
6a5c10c45f | |||
66cbd3e2fb | |||
952fc6870d | |||
f33fb6e419 | |||
0d28d3cf33 | |||
33add2ad7d | |||
9d7fa3be31 | |||
4e168333a8 | |||
238803cb40 | |||
34986b773a | |||
9e2a14a889 | |||
9b391b09a0 | |||
05b5ff219c | |||
f5d79bf7dd | |||
3373518cc8 | |||
999cfc4f45 | |||
76b8b8d05c | |||
f21426e189 | |||
56ac194e1d | |||
c1fe7fd7e3 | |||
400d160e39 | |||
fb3bbe4ea3 | |||
1db421ab85 | |||
e9931ace4f | |||
9aaeac9cf7 | |||
fcafb75382 | |||
6646cca892 | |||
4f2ee994f3 | |||
42957af027 | |||
c7b190dabd | |||
d4c8db8f1b | |||
c45889f104 | |||
929d044575 | |||
58a646a368 | |||
b342ae61b3 | |||
13c44953fb | |||
ce81b1da23 | |||
c9e3a4e76d | |||
a4a1ca22ef | |||
5bb0fd2cab | |||
ce1d6d9f16 | |||
9901164d81 | |||
6436a20284 | |||
9371c0e9dd | |||
450d740847 | |||
4eb56b56e7 | |||
95c2a71820 | |||
b356d23638 | |||
acaabcf391 | |||
a1e03535db | |||
e3f5da7e60 | |||
155067ab4f | |||
6c62f01552 | |||
0454986e78 | |||
eb3e3e1ddf | |||
f5d9fbc2e9 | |||
c09376d55f | |||
8f894b2263 | |||
4045f659bd | |||
2708ce62d2 | |||
7c269a7b16 | |||
d0947483a3 | |||
75c50e599c | |||
6aed56736b | |||
a02ea57717 | |||
72c4083ddf | |||
d3aff11c3e | |||
cf4b0714f7 | |||
8664fcb83b | |||
45a177069f | |||
d3fa84d528 | |||
85cf82ff01 | |||
f9d29daba6 | |||
c256631065 | |||
b62bbd3580 | |||
c977ff4407 | |||
b0812b6ac0 | |||
80f5a16798 | |||
ea8bbf2a4e | |||
08bf6a8bc3 | |||
ffdd02a55d | |||
e73fe3dd02 | |||
4ca7994b2a | |||
06ce79152b | |||
6a8c89d053 | |||
7f0dc7998b | |||
acd7160201 | |||
a52cdce936 | |||
d4a4976648 | |||
cc2d43be2b | |||
2aa9425fbe | |||
3f390a366c | |||
9a1a3a4d4c | |||
acfc01332b | |||
1f3299fda9 | |||
acf9de4c94 | |||
40ef015a27 | |||
dfe3948728 | |||
0c439117bb | |||
692654dca0 | |||
30f882c16d | |||
ca9a1ed969 | |||
47c95e77d1 | |||
3b9e4dd3a3 | |||
5c2303e0c7 | |||
317c176279 | |||
0d35ccb5e0 | |||
b5ca549c93 | |||
aba5377f69 | |||
18430ed363 | |||
3797a0a7b7 | |||
2afe7e3567 | |||
5a067ba9d0 | |||
0e02bdc17a | |||
810df0ea8e | |||
7f94b78dda | |||
ca5120c339 | |||
fa7ca5d4fe | |||
c338898a47 | |||
da8be8ced6 | |||
90b666da60 | |||
bc62692757 | |||
7a7d992d0d | |||
e5afd4449d | |||
1e6771e504 | |||
7b77f5a13e | |||
350410f6b1 | |||
c8302c6c00 | |||
04f6b0a192 | |||
34479d7177 | |||
b832abb63d | |||
1f4e9319c7 | |||
7efc378205 | |||
4ef88fc3a8 | |||
4204cd591b | |||
70f19c7fce | |||
c73cda76b1 | |||
f591c47246 | |||
62fdec17a1 | |||
991bbdcab9 | |||
5a1a1e8ea9 | |||
23366d2aa9 | |||
0ccfa4e5d8 | |||
ffd27e6cb2 | |||
cb50786f49 | |||
52fc4f195c | |||
a9ecaa06a7 | |||
9ce0fc3311 | |||
f59b61dc4d | |||
5bc12c11cc | |||
af04d8f1a5 | |||
1d24509b7b | |||
e58142add4 | |||
8efd2efc32 | |||
b5ffa9ec10 | |||
388091fe4d | |||
5071c75316 | |||
a6d19ecc6b | |||
5733b20f41 | |||
8c0ba528bc | |||
255a4dacc5 | |||
3d2b5f2f49 | |||
a6e66af923 | |||
d9b1bc6d13 | |||
1a2c4d8050 | |||
6fc944d895 | |||
ec315c66bb | |||
14c14b44e4 | |||
e121b4b822 | |||
0c627f5d3c | |||
3291eea310 | |||
3b6c17b5c0 | |||
09322b1da9 | |||
564a4fc847 | |||
4f54544d73 | |||
7acf0d06f5 | |||
18f09473bf | |||
a37eec6333 | |||
3d4fd94363 | |||
027c4783d7 | |||
299a663440 | |||
891e417cbc | |||
cf76baea41 | |||
33fc56253b | |||
8119214f4e | |||
43e9c4eecc | |||
4296d8f17d | |||
b0ca120554 | |||
c525de335e | |||
7539fdc629 | |||
b044db9172 | |||
6fcccbd755 | |||
f1665e6918 | |||
35e47e3514 | |||
2e91ddd24e | |||
53e88a0353 | |||
af1e56c49e | |||
c3b58472be | |||
9db2ac5616 | |||
b970b4ef62 | |||
ac14de13b2 | |||
5c72261c66 | |||
81c4bf0296 | |||
ad8a1be529 | |||
00b8cccdd8 | |||
26a66a6b1c | |||
278f4be806 | |||
77a7ec6329 | |||
c2d267df02 | |||
965a7bc21c | |||
f39d05ca26 | |||
e1a124e8dc | |||
864075ec43 | |||
c5a6f65527 | |||
e2e9dc030c | |||
04af1879b9 | |||
43c1dccb91 | |||
1c7873cdf4 | |||
101bc5bc2d | |||
67845745c1 | |||
89422d29b1 | |||
ef2b369387 | |||
70912f66de | |||
6681ce5cf6 | |||
9fefce68dc | |||
bb470f4e13 | |||
ee4012dcf9 | |||
a9945bba60 | |||
8adffaa818 | |||
6a02dd90c9 | |||
291f29caf6 | |||
98bf984167 | |||
34e557af54 | |||
885f0063e9 | |||
d2bc1994f3 | |||
0c0d705b5c | |||
c8017176ac | |||
e4171b1b6d | |||
231e2dd49d | |||
5b59c3db05 | |||
fac60b8925 | |||
be6e0daee7 | |||
2762e17117 | |||
058761f1c1 | |||
9d87d5ae02 | |||
8b966a0506 | |||
505a276596 | |||
f077b0a986 | |||
45f4eeb291 | |||
341fa34887 | |||
83578051a9 | |||
98c31f366a | |||
449fa5ee06 | |||
089f751360 | |||
c6b0c3910c | |||
928e3f42ad | |||
1467b9572a | |||
597b2c39af | |||
ed03a58b65 | |||
6dc5ef759f | |||
010e5eacfb | |||
4a9c581729 | |||
ccae08e822 | |||
3ed675101a | |||
2e2d141afd | |||
d574bf43e8 | |||
2978b00691 | |||
c5cd749076 | |||
ec6c7b4367 | |||
ca51090200 | |||
3b1ca60f8f | |||
8ef9312464 | |||
7c1f79fc16 | |||
ba359fd507 | |||
b34ab4a43b | |||
a31e48d394 | |||
16c5690929 | |||
31345d5545 | |||
8b70966aa9 | |||
8dcf73c5c9 | |||
46a29020bb | |||
765577b5d0 | |||
a881baa2c3 | |||
747f6c6805 | |||
1e2ae142c0 | |||
01dc81336d | |||
5902f5f460 | |||
1f53df54eb | |||
1550bb6ed0 | |||
95cf2c0187 | |||
028cb644ec | |||
3ac8f6301e | |||
bc925ce3f3 | |||
3275f4e886 | |||
e4010de9f0 | |||
966b4be276 | |||
4b071211e6 | |||
8f37854b18 | |||
cbc75a12f0 | |||
d1c02d93b3 | |||
ba766eebee | |||
d6c6b10817 | |||
883b98efad | |||
06d531486e | |||
c2fdc8820c | |||
334afbc76f | |||
fced6d171e | |||
6d37ca2165 |
@ -2,8 +2,15 @@ env:
|
||||
CIRRUS_CLONE_DEPTH: 1
|
||||
|
||||
freebsd_12_task:
|
||||
env:
|
||||
GIT_PROVE_OPTS: "--timer --jobs 10"
|
||||
GIT_TEST_OPTS: "--no-chain-lint --no-bin-wrappers"
|
||||
MAKEFLAGS: "-j4"
|
||||
DEFAULT_TEST_TARGET: prove
|
||||
DEVELOPER: 1
|
||||
freebsd_instance:
|
||||
image: freebsd-12-1-release-amd64
|
||||
image_family: freebsd-12-2
|
||||
memory: 2G
|
||||
install_script:
|
||||
pkg install -y gettext gmake perl5
|
||||
create_user_script:
|
||||
|
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -6,6 +6,7 @@
|
||||
*.pm eol=lf diff=perl
|
||||
*.py eol=lf diff=python
|
||||
*.bat eol=crlf
|
||||
CODE_OF_CONDUCT.md -whitespace
|
||||
/Documentation/**/*.txt eol=lf
|
||||
/command-list.txt eol=lf
|
||||
/GIT-VERSION-GEN eol=lf
|
||||
|
26
.github/workflows/check-whitespace.yml
vendored
26
.github/workflows/check-whitespace.yml
vendored
@ -12,15 +12,9 @@ jobs:
|
||||
check-whitespace:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set commit count
|
||||
shell: bash
|
||||
run: echo "COMMIT_DEPTH=$((1+$COMMITS))" >>$GITHUB_ENV
|
||||
env:
|
||||
COMMITS: ${{ github.event.pull_request.commits }}
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: ${{ env.COMMIT_DEPTH }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: git log --check
|
||||
id: check_out
|
||||
@ -47,25 +41,9 @@ jobs:
|
||||
echo "${dash} ${etc}"
|
||||
;;
|
||||
esac
|
||||
done <<< $(git log --check --pretty=format:"---% h% s" -${{github.event.pull_request.commits}})
|
||||
done <<< $(git log --check --pretty=format:"---% h% s" ${{github.event.pull_request.base.sha}}..)
|
||||
|
||||
if test -n "${log}"
|
||||
then
|
||||
echo "::set-output name=checkout::"${log}""
|
||||
exit 2
|
||||
fi
|
||||
|
||||
- name: Add Check Output as Comment
|
||||
uses: actions/github-script@v3
|
||||
id: add-comment
|
||||
env:
|
||||
log: ${{ steps.check_out.outputs.checkout }}
|
||||
with:
|
||||
script: |
|
||||
await github.issues.createComment({
|
||||
issue_number: context.issue.number,
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
body: `Whitespace errors found in workflow ${{ github.workflow }}:\n\n\`\`\`\n${process.env.log.replace(/\\n/g, "\n")}\n\`\`\``
|
||||
})
|
||||
if: ${{ failure() }}
|
||||
|
190
.github/workflows/main.yml
vendored
190
.github/workflows/main.yml
vendored
@ -81,82 +81,48 @@ jobs:
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: download git-sdk-64-minimal
|
||||
shell: bash
|
||||
run: |
|
||||
## Get artifact
|
||||
urlbase=https://dev.azure.com/git-for-windows/git/_apis/build/builds
|
||||
id=$(curl "$urlbase?definitions=22&statusFilter=completed&resultFilter=succeeded&\$top=1" |
|
||||
jq -r ".value[] | .id")
|
||||
download_url="$(curl "$urlbase/$id/artifacts" |
|
||||
jq -r '.value[] | select(.name == "git-sdk-64-minimal").resource.downloadUrl')"
|
||||
curl --connect-timeout 10 --retry 5 --retry-delay 0 --retry-max-time 240 \
|
||||
-o artifacts.zip "$download_url"
|
||||
|
||||
## Unzip and remove the artifact
|
||||
unzip artifacts.zip
|
||||
rm artifacts.zip
|
||||
- uses: actions/checkout@v2
|
||||
- uses: git-for-windows/setup-git-for-windows-sdk@v1
|
||||
- name: build
|
||||
shell: powershell
|
||||
shell: bash
|
||||
env:
|
||||
HOME: ${{runner.workspace}}
|
||||
MSYSTEM: MINGW64
|
||||
NO_PERL: 1
|
||||
run: |
|
||||
& .\git-sdk-64-minimal\usr\bin\bash.exe -lc @"
|
||||
printf '%s\n' /git-sdk-64-minimal/ >>.git/info/exclude
|
||||
|
||||
ci/make-test-artifacts.sh artifacts
|
||||
"@
|
||||
- name: upload build artifacts
|
||||
uses: actions/upload-artifact@v1
|
||||
run: ci/make-test-artifacts.sh artifacts
|
||||
- name: zip up tracked files
|
||||
run: git archive -o artifacts/tracked.tar.gz HEAD
|
||||
- name: upload tracked files and build artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: windows-artifacts
|
||||
path: artifacts
|
||||
- name: upload git-sdk-64-minimal
|
||||
uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: git-sdk-64-minimal
|
||||
path: git-sdk-64-minimal
|
||||
windows-test:
|
||||
runs-on: windows-latest
|
||||
needs: [windows-build]
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
nr: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: download build artifacts
|
||||
uses: actions/download-artifact@v1
|
||||
- name: download tracked files and build artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: windows-artifacts
|
||||
path: ${{github.workspace}}
|
||||
- name: extract build artifacts
|
||||
- name: extract tracked files and build artifacts
|
||||
shell: bash
|
||||
run: tar xf artifacts.tar.gz
|
||||
- name: download git-sdk-64-minimal
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: git-sdk-64-minimal
|
||||
path: ${{github.workspace}}/git-sdk-64-minimal/
|
||||
run: tar xf artifacts.tar.gz && tar xf tracked.tar.gz
|
||||
- uses: git-for-windows/setup-git-for-windows-sdk@v1
|
||||
- name: test
|
||||
shell: powershell
|
||||
run: |
|
||||
& .\git-sdk-64-minimal\usr\bin\bash.exe -lc @"
|
||||
# Let Git ignore the SDK
|
||||
printf '%s\n' /git-sdk-64-minimal/ >>.git/info/exclude
|
||||
|
||||
ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
"@
|
||||
shell: bash
|
||||
run: ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
- name: ci/print-test-failures.sh
|
||||
if: failure()
|
||||
shell: powershell
|
||||
run: |
|
||||
& .\git-sdk-64-minimal\usr\bin\bash.exe -lc ci/print-test-failures.sh
|
||||
shell: bash
|
||||
run: ci/print-test-failures.sh
|
||||
- name: Upload failed tests' directories
|
||||
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
|
||||
uses: actions/upload-artifact@v1
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: failed-tests-windows
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
@ -164,27 +130,17 @@ jobs:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
env:
|
||||
MSYSTEM: MINGW64
|
||||
NO_PERL: 1
|
||||
GIT_CONFIG_PARAMETERS: "'user.name=CI' 'user.email=ci@git'"
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: download git-sdk-64-minimal
|
||||
shell: bash
|
||||
run: |
|
||||
## Get artifact
|
||||
urlbase=https://dev.azure.com/git-for-windows/git/_apis/build/builds
|
||||
id=$(curl "$urlbase?definitions=22&statusFilter=completed&resultFilter=succeeded&\$top=1" |
|
||||
jq -r ".value[] | .id")
|
||||
download_url="$(curl "$urlbase/$id/artifacts" |
|
||||
jq -r '.value[] | select(.name == "git-sdk-64-minimal").resource.downloadUrl')"
|
||||
curl --connect-timeout 10 --retry 5 --retry-delay 0 --retry-max-time 240 \
|
||||
-o artifacts.zip "$download_url"
|
||||
|
||||
## Unzip and remove the artifact
|
||||
unzip artifacts.zip
|
||||
rm artifacts.zip
|
||||
- uses: actions/checkout@v2
|
||||
- uses: git-for-windows/setup-git-for-windows-sdk@v1
|
||||
- name: initialize vcpkg
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: 'microsoft/vcpkg'
|
||||
path: 'compat/vcbuild/vcpkg'
|
||||
- name: download vcpkg artifacts
|
||||
shell: powershell
|
||||
run: |
|
||||
@ -197,74 +153,60 @@ jobs:
|
||||
- name: add msbuild to PATH
|
||||
uses: microsoft/setup-msbuild@v1
|
||||
- name: copy dlls to root
|
||||
shell: powershell
|
||||
run: |
|
||||
& compat\vcbuild\vcpkg_copy_dlls.bat release
|
||||
if (!$?) { exit(1) }
|
||||
shell: cmd
|
||||
run: compat\vcbuild\vcpkg_copy_dlls.bat release
|
||||
- name: generate Visual Studio solution
|
||||
shell: bash
|
||||
run: |
|
||||
cmake `pwd`/contrib/buildsystems/ -DCMAKE_PREFIX_PATH=`pwd`/compat/vcbuild/vcpkg/installed/x64-windows \
|
||||
-DMSGFMT_EXE=`pwd`/git-sdk-64-minimal/mingw64/bin/msgfmt.exe -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON
|
||||
-DNO_GETTEXT=YesPlease -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON
|
||||
- name: MSBuild
|
||||
run: msbuild git.sln -property:Configuration=Release -property:Platform=x64 -maxCpuCount:4 -property:PlatformToolset=v142
|
||||
- name: bundle artifact tar
|
||||
shell: powershell
|
||||
shell: bash
|
||||
env:
|
||||
MSVC: 1
|
||||
VCPKG_ROOT: ${{github.workspace}}\compat\vcbuild\vcpkg
|
||||
run: |
|
||||
& git-sdk-64-minimal\usr\bin\bash.exe -lc @"
|
||||
mkdir -p artifacts &&
|
||||
eval \"`$(make -n artifacts-tar INCLUDE_DLLS_IN_ARTIFACTS=YesPlease ARTIFACTS_DIRECTORY=artifacts 2>&1 | grep ^tar)\"
|
||||
"@
|
||||
- name: upload build artifacts
|
||||
uses: actions/upload-artifact@v1
|
||||
mkdir -p artifacts &&
|
||||
eval "$(make -n artifacts-tar INCLUDE_DLLS_IN_ARTIFACTS=YesPlease ARTIFACTS_DIRECTORY=artifacts NO_GETTEXT=YesPlease 2>&1 | grep ^tar)"
|
||||
- name: zip up tracked files
|
||||
run: git archive -o artifacts/tracked.tar.gz HEAD
|
||||
- name: upload tracked files and build artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: vs-artifacts
|
||||
path: artifacts
|
||||
vs-test:
|
||||
runs-on: windows-latest
|
||||
needs: [vs-build, windows-build]
|
||||
needs: vs-build
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
nr: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: download git-sdk-64-minimal
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: git-sdk-64-minimal
|
||||
path: ${{github.workspace}}/git-sdk-64-minimal/
|
||||
- name: download build artifacts
|
||||
uses: actions/download-artifact@v1
|
||||
- uses: git-for-windows/setup-git-for-windows-sdk@v1
|
||||
- name: download tracked files and build artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: vs-artifacts
|
||||
path: ${{github.workspace}}
|
||||
- name: extract build artifacts
|
||||
- name: extract tracked files and build artifacts
|
||||
shell: bash
|
||||
run: tar xf artifacts.tar.gz
|
||||
run: tar xf artifacts.tar.gz && tar xf tracked.tar.gz
|
||||
- name: test
|
||||
shell: powershell
|
||||
shell: bash
|
||||
env:
|
||||
MSYSTEM: MINGW64
|
||||
NO_SVN_TESTS: 1
|
||||
GIT_TEST_SKIP_REBASE_P: 1
|
||||
run: |
|
||||
& .\git-sdk-64-minimal\usr\bin\bash.exe -lc @"
|
||||
# Let Git ignore the SDK and the test-cache
|
||||
printf '%s\n' /git-sdk-64-minimal/ /test-cache/ >>.git/info/exclude
|
||||
|
||||
ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
"@
|
||||
run: ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
- name: ci/print-test-failures.sh
|
||||
if: failure()
|
||||
shell: powershell
|
||||
run: |
|
||||
& .\git-sdk-64-minimal\usr\bin\bash.exe -lc ci/print-test-failures.sh
|
||||
shell: bash
|
||||
run: ci/print-test-failures.sh
|
||||
- name: Upload failed tests' directories
|
||||
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
|
||||
uses: actions/upload-artifact@v1
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: failed-tests-windows
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
@ -272,6 +214,7 @@ jobs:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
vector:
|
||||
- jobname: linux-clang
|
||||
@ -286,7 +229,7 @@ jobs:
|
||||
- jobname: osx-gcc
|
||||
cc: gcc
|
||||
pool: macos-latest
|
||||
- jobname: GETTEXT_POISON
|
||||
- jobname: linux-gcc-default
|
||||
cc: gcc
|
||||
pool: ubuntu-latest
|
||||
env:
|
||||
@ -294,14 +237,14 @@ jobs:
|
||||
jobname: ${{matrix.vector.jobname}}
|
||||
runs-on: ${{matrix.vector.pool}}
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/checkout@v2
|
||||
- run: ci/install-dependencies.sh
|
||||
- run: ci/run-build-and-tests.sh
|
||||
- run: ci/print-test-failures.sh
|
||||
if: failure()
|
||||
- name: Upload failed tests' directories
|
||||
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
|
||||
uses: actions/upload-artifact@v1
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: failed-tests-${{matrix.vector.jobname}}
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
@ -309,12 +252,15 @@ jobs:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
vector:
|
||||
- jobname: linux-musl
|
||||
image: alpine
|
||||
- jobname: Linux32
|
||||
image: daald/ubuntu32:xenial
|
||||
- jobname: pedantic
|
||||
image: fedora
|
||||
env:
|
||||
jobname: ${{matrix.vector.jobname}}
|
||||
runs-on: ubuntu-latest
|
||||
@ -336,11 +282,31 @@ jobs:
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
env:
|
||||
jobname: StaticAnalysis
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/checkout@v2
|
||||
- run: ci/install-dependencies.sh
|
||||
- run: ci/run-static-analysis.sh
|
||||
sparse:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
env:
|
||||
jobname: sparse
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Download a current `sparse` package
|
||||
# Ubuntu's `sparse` version is too old for us
|
||||
uses: git-for-windows/get-azure-pipelines-artifact@v0
|
||||
with:
|
||||
repository: git/git
|
||||
definitionId: 10
|
||||
artifact: sparse-20.04
|
||||
- name: Install the current `sparse` package
|
||||
run: sudo dpkg -i sparse-20.04/sparse_*.deb
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install other dependencies
|
||||
run: ci/install-dependencies.sh
|
||||
- run: make sparse
|
||||
documentation:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
@ -348,6 +314,6 @@ jobs:
|
||||
jobname: Documentation
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/checkout@v2
|
||||
- run: ci/install-dependencies.sh
|
||||
- run: ci/test-documentation.sh
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -33,6 +33,7 @@
|
||||
/git-check-mailmap
|
||||
/git-check-ref-format
|
||||
/git-checkout
|
||||
/git-checkout--worker
|
||||
/git-checkout-index
|
||||
/git-cherry
|
||||
/git-cherry-pick
|
||||
@ -162,6 +163,7 @@
|
||||
/git-stripspace
|
||||
/git-submodule
|
||||
/git-submodule--helper
|
||||
/git-subtree
|
||||
/git-svn
|
||||
/git-switch
|
||||
/git-symbolic-ref
|
||||
|
1
.mailmap
1
.mailmap
@ -220,6 +220,7 @@ Philipp A. Hartmann <pah@qo.cx> <ph@sorgh.de>
|
||||
Philippe Bruhat <book@cpan.org>
|
||||
Ralf Thielow <ralf.thielow@gmail.com> <ralf.thielow@googlemail.com>
|
||||
Ramsay Jones <ramsay@ramsayjones.plus.com> <ramsay@ramsay1.demon.co.uk>
|
||||
Ramkumar Ramachandra <r@artagnon.com> <artagnon@gmail.com>
|
||||
Randall S. Becker <randall.becker@nexbridge.ca> <rsbecker@nexbridge.com>
|
||||
René Scharfe <l.s.r@web.de> <rene.scharfe@lsrfire.ath.cx>
|
||||
René Scharfe <l.s.r@web.de> Rene Scharfe
|
||||
|
@ -16,7 +16,7 @@ compiler:
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- env: jobname=GETTEXT_POISON
|
||||
- env: jobname=linux-gcc-default
|
||||
os: linux
|
||||
compiler:
|
||||
addons:
|
||||
|
@ -8,73 +8,64 @@ this code of conduct may be banned from the community.
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as
|
||||
contributors and maintainers pledge to make participation in our project and
|
||||
our community a harassment-free experience for everyone, regardless of age,
|
||||
body size, disability, ethnicity, sex characteristics, gender identity and
|
||||
expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity and
|
||||
orientation.
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity
|
||||
and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment
|
||||
include:
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the
|
||||
overall community
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or
|
||||
advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* The use of sexualized language or imagery, and sexual attention or
|
||||
advances of any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic
|
||||
address, without explicit permission
|
||||
* Publishing others' private information, such as a physical or email
|
||||
address, without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable
|
||||
behavior and are expected to take appropriate and fair corrective action in
|
||||
response to any instances of unacceptable behavior.
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or
|
||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||
permanently any contributor for other behaviors that they deem inappropriate,
|
||||
threatening, offensive, or harmful.
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all project spaces, and it also applies
|
||||
when an individual is representing the project or its community in public
|
||||
spaces. Examples of representing a project or community include using an
|
||||
official project e-mail address, posting via an official social media account,
|
||||
or acting as an appointed representative at an online or offline event.
|
||||
Representation of a project may be further defined and clarified by project
|
||||
maintainers.
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at git@sfconservancy.org. All
|
||||
complaints will be reviewed and investigated and will result in a response
|
||||
that is deemed necessary and appropriate to the circumstances. The project
|
||||
team is obligated to maintain confidentiality with regard to the reporter of
|
||||
an incident. Further details of specific enforcement policies may be posted
|
||||
separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||
faith may face temporary or permanent repercussions as determined by other
|
||||
members of the project's leadership.
|
||||
|
||||
The project leadership team can be contacted by email as a whole at
|
||||
reported to the community leaders responsible for enforcement at
|
||||
git@sfconservancy.org, or individually:
|
||||
|
||||
- Ævar Arnfjörð Bjarmason <avarab@gmail.com>
|
||||
@ -82,12 +73,73 @@ git@sfconservancy.org, or individually:
|
||||
- Jeff King <peff@peff.net>
|
||||
- Junio C Hamano <gitster@pobox.com>
|
||||
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series
|
||||
of actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or
|
||||
permanent ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within
|
||||
the community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
||||
version 2.0, available at
|
||||
[https://www.contributor-covenant.org/version/2/0/code_of_conduct.html][v2.0].
|
||||
|
||||
Community Impact Guidelines were inspired by
|
||||
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available
|
||||
at [https://www.contributor-covenant.org/translations][translations].
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
[v2.0]: https://www.contributor-covenant.org/version/2/0/code_of_conduct.html
|
||||
[Mozilla CoC]: https://github.com/mozilla/diversity
|
||||
[FAQ]: https://www.contributor-covenant.org/faq
|
||||
[translations]: https://www.contributor-covenant.org/translations
|
||||
|
||||
For answers to common questions about this code of conduct, see
|
||||
https://www.contributor-covenant.org/faq
|
||||
|
@ -175,6 +175,11 @@ For shell scripts specifically (not exhaustive):
|
||||
|
||||
does not have such a problem.
|
||||
|
||||
- Even though "local" is not part of POSIX, we make heavy use of it
|
||||
in our test suite. We do not use it in scripted Porcelains, and
|
||||
hopefully nobody starts using "local" before they are reimplemented
|
||||
in C ;-)
|
||||
|
||||
|
||||
For C programs:
|
||||
|
||||
@ -498,7 +503,12 @@ Error Messages
|
||||
|
||||
- Do not end error messages with a full stop.
|
||||
|
||||
- Do not capitalize ("unable to open %s", not "Unable to open %s")
|
||||
- Do not capitalize the first word, only because it is the first word
|
||||
in the message ("unable to open %s", not "Unable to open %s"). But
|
||||
"SHA-3 not supported" is fine, because the reason the first word is
|
||||
capitalized is not because it is at the beginning of the sentence,
|
||||
but because the word would be spelled in capital letters even when
|
||||
it appeared in the middle of the sentence.
|
||||
|
||||
- Say what the error is first ("cannot open %s", not "%s: cannot open")
|
||||
|
||||
@ -541,6 +551,51 @@ Writing Documentation:
|
||||
documentation, please see the documentation-related advice in the
|
||||
Documentation/SubmittingPatches file).
|
||||
|
||||
In order to ensure the documentation is inclusive, avoid assuming
|
||||
that an unspecified example person is male or female, and think
|
||||
twice before using "he", "him", "she", or "her". Here are some
|
||||
tips to avoid use of gendered pronouns:
|
||||
|
||||
- Prefer succinctness and matter-of-factly describing functionality
|
||||
in the abstract. E.g.
|
||||
|
||||
--short:: Emit output in the short-format.
|
||||
|
||||
and avoid something like these overly verbose alternatives:
|
||||
|
||||
--short:: Use this to emit output in the short-format.
|
||||
--short:: You can use this to get output in the short-format.
|
||||
--short:: A user who prefers shorter output could....
|
||||
--short:: Should a person and/or program want shorter output, he
|
||||
she/they/it can...
|
||||
|
||||
This practice often eliminates the need to involve human actors in
|
||||
your description, but it is a good practice regardless of the
|
||||
avoidance of gendered pronouns.
|
||||
|
||||
- When it becomes awkward to stick to this style, prefer "you" when
|
||||
addressing the the hypothetical user, and possibly "we" when
|
||||
discussing how the program might react to the user. E.g.
|
||||
|
||||
You can use this option instead of --xyz, but we might remove
|
||||
support for it in future versions.
|
||||
|
||||
while keeping in mind that you can probably be less verbose, e.g.
|
||||
|
||||
Use this instead of --xyz. This option might be removed in future
|
||||
versions.
|
||||
|
||||
- If you still need to refer to an example person that is
|
||||
third-person singular, you may resort to "singular they" to avoid
|
||||
"he/she/him/her", e.g.
|
||||
|
||||
A contributor asks their upstream to pull from them.
|
||||
|
||||
Note that this sounds ungrammatical and unnatural to those who
|
||||
learned that "they" is only used for third-person plural, e.g.
|
||||
those who learn English as a second language in some parts of the
|
||||
world.
|
||||
|
||||
Every user-visible change should be reflected in the documentation.
|
||||
The same general rule as for code applies -- imitate the existing
|
||||
conventions.
|
||||
|
@ -2,6 +2,8 @@
|
||||
MAN1_TXT =
|
||||
MAN5_TXT =
|
||||
MAN7_TXT =
|
||||
HOWTO_TXT =
|
||||
DOC_DEP_TXT =
|
||||
TECH_DOCS =
|
||||
ARTICLES =
|
||||
SP_ARTICLES =
|
||||
@ -21,6 +23,7 @@ MAN1_TXT += gitweb.txt
|
||||
MAN5_TXT += gitattributes.txt
|
||||
MAN5_TXT += githooks.txt
|
||||
MAN5_TXT += gitignore.txt
|
||||
MAN5_TXT += gitmailmap.txt
|
||||
MAN5_TXT += gitmodules.txt
|
||||
MAN5_TXT += gitrepository-layout.txt
|
||||
MAN5_TXT += gitweb.conf.txt
|
||||
@ -41,6 +44,11 @@ MAN7_TXT += gittutorial-2.txt
|
||||
MAN7_TXT += gittutorial.txt
|
||||
MAN7_TXT += gitworkflows.txt
|
||||
|
||||
HOWTO_TXT += $(wildcard howto/*.txt)
|
||||
|
||||
DOC_DEP_TXT += $(wildcard *.txt)
|
||||
DOC_DEP_TXT += $(wildcard config/*.txt)
|
||||
|
||||
ifdef MAN_FILTER
|
||||
MAN_TXT = $(filter $(MAN_FILTER),$(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT))
|
||||
else
|
||||
@ -75,6 +83,7 @@ SP_ARTICLES += howto/rebuild-from-update-hook
|
||||
SP_ARTICLES += howto/rebase-from-internal-branch
|
||||
SP_ARTICLES += howto/keep-canonical-history-correct
|
||||
SP_ARTICLES += howto/maintain-git
|
||||
SP_ARTICLES += howto/coordinate-embargoed-releases
|
||||
API_DOCS = $(patsubst %.txt,%,$(filter-out technical/api-index-skel.txt technical/api-index.txt, $(wildcard technical/api-*.txt)))
|
||||
SP_ARTICLES += $(API_DOCS)
|
||||
|
||||
@ -89,6 +98,7 @@ TECH_DOCS += technical/multi-pack-index
|
||||
TECH_DOCS += technical/pack-format
|
||||
TECH_DOCS += technical/pack-heuristics
|
||||
TECH_DOCS += technical/pack-protocol
|
||||
TECH_DOCS += technical/parallel-checkout
|
||||
TECH_DOCS += technical/partial-clone
|
||||
TECH_DOCS += technical/protocol-capabilities
|
||||
TECH_DOCS += technical/protocol-common
|
||||
@ -129,6 +139,7 @@ ASCIIDOC_CONF = -f asciidoc.conf
|
||||
ASCIIDOC_COMMON = $(ASCIIDOC) $(ASCIIDOC_EXTRA) $(ASCIIDOC_CONF) \
|
||||
-amanversion=$(GIT_VERSION) \
|
||||
-amanmanual='Git Manual' -amansource='Git'
|
||||
ASCIIDOC_DEPS = asciidoc.conf GIT-ASCIIDOCFLAGS
|
||||
TXT_TO_HTML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_HTML)
|
||||
TXT_TO_XML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_DOCBOOK)
|
||||
MANPAGE_XSL = manpage-normal.xsl
|
||||
@ -183,6 +194,7 @@ ASCIIDOC_DOCBOOK = docbook5
|
||||
ASCIIDOC_EXTRA += -acompat-mode -atabsize=8
|
||||
ASCIIDOC_EXTRA += -I. -rasciidoctor-extensions
|
||||
ASCIIDOC_EXTRA += -alitdd='&\#x2d;&\#x2d;'
|
||||
ASCIIDOC_DEPS = asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
|
||||
DBLATEX_COMMON =
|
||||
XMLTO_EXTRA += --skip-validation
|
||||
XMLTO_EXTRA += -x manpage.xsl
|
||||
@ -283,10 +295,8 @@ docdep_prereqs = \
|
||||
mergetools-list.made $(mergetools_txt) \
|
||||
cmd-list.made $(cmds_txt)
|
||||
|
||||
doc.dep : $(docdep_prereqs) $(wildcard *.txt) $(wildcard config/*.txt) build-docdep.perl
|
||||
$(QUIET_GEN)$(RM) $@+ $@ && \
|
||||
$(PERL_PATH) ./build-docdep.perl >$@+ $(QUIET_STDERR) && \
|
||||
mv $@+ $@
|
||||
doc.dep : $(docdep_prereqs) $(DOC_DEP_TXT) build-docdep.perl
|
||||
$(QUIET_GEN)$(PERL_PATH) ./build-docdep.perl >$@ $(QUIET_STDERR)
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
-include doc.dep
|
||||
@ -306,8 +316,7 @@ cmds_txt = cmds-ancillaryinterrogators.txt \
|
||||
$(cmds_txt): cmd-list.made
|
||||
|
||||
cmd-list.made: cmd-list.perl ../command-list.txt $(MAN1_TXT)
|
||||
$(QUIET_GEN)$(RM) $@ && \
|
||||
$(PERL_PATH) ./cmd-list.perl ../command-list.txt $(cmds_txt) $(QUIET_STDERR) && \
|
||||
$(QUIET_GEN)$(PERL_PATH) ./cmd-list.perl ../command-list.txt $(cmds_txt) $(QUIET_STDERR) && \
|
||||
date >$@
|
||||
|
||||
mergetools_txt = mergetools-diff.txt mergetools-merge.txt
|
||||
@ -315,7 +324,7 @@ mergetools_txt = mergetools-diff.txt mergetools-merge.txt
|
||||
$(mergetools_txt): mergetools-list.made
|
||||
|
||||
mergetools-list.made: ../git-mergetool--lib.sh $(wildcard ../mergetools/*)
|
||||
$(QUIET_GEN)$(RM) $@ && \
|
||||
$(QUIET_GEN) \
|
||||
$(SHELL_PATH) -c 'MERGE_TOOLS_DIR=../mergetools && \
|
||||
. ../git-mergetool--lib.sh && \
|
||||
show_tool_names can_diff "* " || :' >mergetools-diff.txt && \
|
||||
@ -344,32 +353,23 @@ clean:
|
||||
$(RM) manpage-base-url.xsl
|
||||
$(RM) GIT-ASCIIDOCFLAGS
|
||||
|
||||
$(MAN_HTML): %.html : %.txt asciidoc.conf asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(TXT_TO_HTML) -d manpage -o $@+ $< && \
|
||||
mv $@+ $@
|
||||
$(MAN_HTML): %.html : %.txt $(ASCIIDOC_DEPS)
|
||||
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) -d manpage -o $@ $<
|
||||
|
||||
$(OBSOLETE_HTML): %.html : %.txto asciidoc.conf asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(TXT_TO_HTML) -o $@+ $< && \
|
||||
mv $@+ $@
|
||||
$(OBSOLETE_HTML): %.html : %.txto $(ASCIIDOC_DEPS)
|
||||
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) -o $@ $<
|
||||
|
||||
manpage-base-url.xsl: manpage-base-url.xsl.in
|
||||
$(QUIET_GEN)sed "s|@@MAN_BASE_URL@@|$(MAN_BASE_URL)|" $< > $@
|
||||
|
||||
%.1 %.5 %.7 : %.xml manpage-base-url.xsl $(wildcard manpage*.xsl)
|
||||
$(QUIET_XMLTO)$(RM) $@ && \
|
||||
$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
|
||||
$(QUIET_XMLTO)$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
|
||||
|
||||
%.xml : %.txt asciidoc.conf asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(TXT_TO_XML) -d manpage -o $@+ $< && \
|
||||
mv $@+ $@
|
||||
%.xml : %.txt $(ASCIIDOC_DEPS)
|
||||
$(QUIET_ASCIIDOC)$(TXT_TO_XML) -d manpage -o $@ $<
|
||||
|
||||
user-manual.xml: user-manual.txt user-manual.conf asciidoctor-extensions.rb GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(TXT_TO_XML) -d book -o $@+ $< && \
|
||||
mv $@+ $@
|
||||
$(QUIET_ASCIIDOC)$(TXT_TO_XML) -d book -o $@ $<
|
||||
|
||||
technical/api-index.txt: technical/api-index-skel.txt \
|
||||
technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS))
|
||||
@ -390,46 +390,35 @@ XSLTOPTS += --stringparam html.stylesheet docbook-xsl.css
|
||||
XSLTOPTS += --param generate.consistent.ids 1
|
||||
|
||||
user-manual.html: user-manual.xml $(XSLT)
|
||||
$(QUIET_XSLTPROC)$(RM) $@+ $@ && \
|
||||
xsltproc $(XSLTOPTS) -o $@+ $(XSLT) $< && \
|
||||
mv $@+ $@
|
||||
$(QUIET_XSLTPROC)xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
|
||||
|
||||
git.info: user-manual.texi
|
||||
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split -o $@ user-manual.texi
|
||||
|
||||
user-manual.texi: user-manual.xml
|
||||
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
|
||||
$(DOCBOOK2X_TEXI) user-manual.xml --encoding=UTF-8 --to-stdout >$@++ && \
|
||||
$(PERL_PATH) fix-texi.perl <$@++ >$@+ && \
|
||||
rm $@++ && \
|
||||
mv $@+ $@
|
||||
$(QUIET_DB2TEXI)$(DOCBOOK2X_TEXI) user-manual.xml --encoding=UTF-8 --to-stdout >$@+ && \
|
||||
$(PERL_PATH) fix-texi.perl <$@+ >$@ && \
|
||||
$(RM) $@+
|
||||
|
||||
user-manual.pdf: user-manual.xml
|
||||
$(QUIET_DBLATEX)$(RM) $@+ $@ && \
|
||||
$(DBLATEX) -o $@+ $(DBLATEX_COMMON) $< && \
|
||||
mv $@+ $@
|
||||
$(QUIET_DBLATEX)$(DBLATEX) -o $@ $(DBLATEX_COMMON) $<
|
||||
|
||||
gitman.texi: $(MAN_XML) cat-texi.perl texi.xsl
|
||||
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
|
||||
$(QUIET_DB2TEXI) \
|
||||
($(foreach xml,$(sort $(MAN_XML)),xsltproc -o $(xml)+ texi.xsl $(xml) && \
|
||||
$(DOCBOOK2X_TEXI) --encoding=UTF-8 --to-stdout $(xml)+ && \
|
||||
rm $(xml)+ &&) true) > $@++ && \
|
||||
$(PERL_PATH) cat-texi.perl $@ <$@++ >$@+ && \
|
||||
rm $@++ && \
|
||||
mv $@+ $@
|
||||
$(RM) $(xml)+ &&) true) > $@+ && \
|
||||
$(PERL_PATH) cat-texi.perl $@ <$@+ >$@ && \
|
||||
$(RM) $@+
|
||||
|
||||
gitman.info: gitman.texi
|
||||
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate $*.texi
|
||||
|
||||
$(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
|
||||
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
|
||||
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@+ && \
|
||||
mv $@+ $@
|
||||
$(QUIET_DB2TEXI)$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@
|
||||
|
||||
howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
|
||||
$(QUIET_GEN)$(RM) $@+ $@ && \
|
||||
'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(wildcard howto/*.txt)) >$@+ && \
|
||||
mv $@+ $@
|
||||
howto-index.txt: howto-index.sh $(HOWTO_TXT)
|
||||
$(QUIET_GEN)'$(SHELL_PATH_SQ)' ./howto-index.sh $(sort $(HOWTO_TXT)) >$@
|
||||
|
||||
$(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
|
||||
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) $*.txt
|
||||
@ -437,11 +426,10 @@ $(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
|
||||
WEBDOC_DEST = /pub/software/scm/git/docs
|
||||
|
||||
howto/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../
|
||||
$(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
|
||||
$(patsubst %.txt,%.html,$(HOWTO_TXT)): %.html : %.txt GIT-ASCIIDOCFLAGS
|
||||
$(QUIET_ASCIIDOC) \
|
||||
sed -e '1,/^$$/d' $< | \
|
||||
$(TXT_TO_HTML) - >$@+ && \
|
||||
mv $@+ $@
|
||||
$(TXT_TO_HTML) - >$@
|
||||
|
||||
install-webdoc : html
|
||||
'$(SHELL_PATH_SQ)' ./install-webdoc.sh $(WEBDOC_DEST)
|
||||
@ -469,11 +457,20 @@ print-man1:
|
||||
@for i in $(MAN1_TXT); do echo $$i; done
|
||||
|
||||
lint-docs::
|
||||
$(QUIET_LINT)$(PERL_PATH) lint-gitlink.perl
|
||||
$(QUIET_LINT)$(PERL_PATH) lint-gitlink.perl \
|
||||
$(HOWTO_TXT) $(DOC_DEP_TXT) \
|
||||
--section=1 $(MAN1_TXT) \
|
||||
--section=5 $(MAN5_TXT) \
|
||||
--section=7 $(MAN7_TXT); \
|
||||
$(PERL_PATH) lint-man-end-blurb.perl $(MAN_TXT); \
|
||||
$(PERL_PATH) lint-man-section-order.perl $(MAN_TXT);
|
||||
|
||||
ifeq ($(wildcard po/Makefile),po/Makefile)
|
||||
doc-l10n install-l10n::
|
||||
$(MAKE) -C po $@
|
||||
endif
|
||||
|
||||
# Delete the target file on error
|
||||
.DELETE_ON_ERROR:
|
||||
|
||||
.PHONY: FORCE
|
||||
|
@ -47,7 +47,7 @@ Veteran contributors who are especially interested in helping mentor newcomers
|
||||
are present on the list. In order to avoid search indexers, group membership is
|
||||
required to view messages; anyone can join and no approval is required.
|
||||
|
||||
==== https://webchat.freenode.net/#git-devel[#git-devel] on Freenode
|
||||
==== https://web.libera.chat/#git-devel[#git-devel] on Libera Chat
|
||||
|
||||
This IRC channel is for conversations between Git contributors. If someone is
|
||||
currently online and knows the answer to your question, you can receive help
|
||||
@ -664,7 +664,7 @@ mention the right animal somewhere:
|
||||
----
|
||||
test_expect_success 'runs correctly with no args and good output' '
|
||||
git psuh >actual &&
|
||||
test_i18ngrep Pony actual
|
||||
grep Pony actual
|
||||
'
|
||||
----
|
||||
|
||||
@ -827,7 +827,7 @@ either examining recent pull requests where someone has been granted `/allow`
|
||||
(https://github.com/gitgitgadget/git/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aopen+%22%2Fallow%22[Search:
|
||||
is:pr is:open "/allow"]), in which case both the author and the person who
|
||||
granted the `/allow` can now `/allow` you, or by inquiring on the
|
||||
https://webchat.freenode.net/#git-devel[#git-devel] IRC channel on Freenode
|
||||
https://web.libera.chat/#git-devel[#git-devel] IRC channel on Libera Chat
|
||||
linking your pull request and asking for someone to `/allow` you.
|
||||
|
||||
If the CI fails, you can update your changes with `git rebase -i` and push your
|
||||
|
@ -691,7 +691,7 @@ help understand. In our case, that means we omit trees and blobs not directly
|
||||
referenced by `HEAD` or `HEAD`'s history, because we begin the walk with only
|
||||
`HEAD` in the `pending` list.)
|
||||
|
||||
First, we'll need to `#include "list-objects-filter-options.h`" and set up the
|
||||
First, we'll need to `#include "list-objects-filter-options.h"` and set up the
|
||||
`struct list_objects_filter_options` at the top of the function.
|
||||
|
||||
----
|
||||
@ -779,7 +779,7 @@ Count all the objects within and modify the print statement:
|
||||
while ((oid = oidset_iter_next(&oit)))
|
||||
omitted_count++;
|
||||
|
||||
printf("commits %d\nblobs %d\ntags %d\ntrees%d\nomitted %d\n",
|
||||
printf("commits %d\nblobs %d\ntags %d\ntrees %d\nomitted %d\n",
|
||||
commit_count, blob_count, tag_count, tree_count, omitted_count);
|
||||
----
|
||||
|
||||
|
@ -50,7 +50,7 @@ Fixes since v1.6.0.2
|
||||
if the working tree is currently dirty.
|
||||
|
||||
* "git for-each-ref --format=%(subject)" fixed for commits with no
|
||||
no newline in the message body.
|
||||
newline in the message body.
|
||||
|
||||
* "git remote" fixed to protect printf from user input.
|
||||
|
||||
|
@ -365,7 +365,7 @@ details).
|
||||
(merge 2fbd4f9 mh/maint-lockfile-overflow later to maint).
|
||||
|
||||
* Invocations of "git checkout" used internally by "git rebase" were
|
||||
counted as "checkout", and affected later "git checkout -" to the
|
||||
counted as "checkout", and affected later "git checkout -", which took
|
||||
the user to an unexpected place.
|
||||
(merge 3bed291 rr/rebase-checkout-reflog later to maint).
|
||||
|
||||
|
16
Documentation/RelNotes/2.17.6.txt
Normal file
16
Documentation/RelNotes/2.17.6.txt
Normal file
@ -0,0 +1,16 @@
|
||||
Git v2.17.6 Release Notes
|
||||
=========================
|
||||
|
||||
This release addresses the security issues CVE-2021-21300.
|
||||
|
||||
Fixes since v2.17.5
|
||||
-------------------
|
||||
|
||||
* CVE-2021-21300:
|
||||
On case-insensitive file systems with support for symbolic links,
|
||||
if Git is configured globally to apply delay-capable clean/smudge
|
||||
filters (such as Git LFS), Git could be fooled into running
|
||||
remote code during a clone.
|
||||
|
||||
Credit for finding and fixing this vulnerability goes to Matheus
|
||||
Tavares, helped by Johannes Schindelin.
|
6
Documentation/RelNotes/2.18.5.txt
Normal file
6
Documentation/RelNotes/2.18.5.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.18.5 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6 to address
|
||||
the security issue CVE-2021-21300; see the release notes for that
|
||||
version for details.
|
6
Documentation/RelNotes/2.19.6.txt
Normal file
6
Documentation/RelNotes/2.19.6.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.19.6 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6 and
|
||||
v2.18.5 to address the security issue CVE-2021-21300; see the
|
||||
release notes for these versions for details.
|
6
Documentation/RelNotes/2.20.5.txt
Normal file
6
Documentation/RelNotes/2.20.5.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.20.5 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5
|
||||
and v2.19.6 to address the security issue CVE-2021-21300; see
|
||||
the release notes for these versions for details.
|
6
Documentation/RelNotes/2.21.4.txt
Normal file
6
Documentation/RelNotes/2.21.4.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.21.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6 and v2.20.5 to address the security issue CVE-2021-21300;
|
||||
see the release notes for these versions for details.
|
7
Documentation/RelNotes/2.22.5.txt
Normal file
7
Documentation/RelNotes/2.22.5.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.22.5 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6,
|
||||
v2.18.5, v2.19.6, v2.20.5 and v2.21.4 to address the security
|
||||
issue CVE-2021-21300; see the release notes for these versions
|
||||
for details.
|
7
Documentation/RelNotes/2.23.4.txt
Normal file
7
Documentation/RelNotes/2.23.4.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.23.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4 and v2.22.5 to address the security
|
||||
issue CVE-2021-21300; see the release notes for these versions
|
||||
for details.
|
7
Documentation/RelNotes/2.24.4.txt
Normal file
7
Documentation/RelNotes/2.24.4.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.24.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5 and v2.23.4 to address the
|
||||
security issue CVE-2021-21300; see the release notes for these
|
||||
versions for details.
|
7
Documentation/RelNotes/2.25.5.txt
Normal file
7
Documentation/RelNotes/2.25.5.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.25.5 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4 and v2.24.4 to address
|
||||
the security issue CVE-2021-21300; see the release notes for
|
||||
these versions for details.
|
7
Documentation/RelNotes/2.26.3.txt
Normal file
7
Documentation/RelNotes/2.26.3.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.26.3 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4 and v2.25.5
|
||||
to address the security issue CVE-2021-21300; see the release
|
||||
notes for these versions for details.
|
7
Documentation/RelNotes/2.27.1.txt
Normal file
7
Documentation/RelNotes/2.27.1.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.27.1 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4, v2.25.5
|
||||
and v2.26.3 to address the security issue CVE-2021-21300; see
|
||||
the release notes for these versions for details.
|
7
Documentation/RelNotes/2.28.1.txt
Normal file
7
Documentation/RelNotes/2.28.1.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.28.1 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4, v2.25.5,
|
||||
v2.26.3 and v2.27.1 to address the security issue CVE-2021-21300;
|
||||
see the release notes for these versions for details.
|
@ -184,8 +184,8 @@ Performance, Internal Implementation, Development Support etc.
|
||||
the ref backend in use, as its format is much richer than the
|
||||
normal refs, and written directly by "git fetch" as a plain file..
|
||||
|
||||
* An unused binary has been discarded, and and a bunch of commands
|
||||
have been turned into into built-in.
|
||||
* An unused binary has been discarded, and a bunch of commands
|
||||
have been turned into built-in.
|
||||
|
||||
* A handful of places in in-tree code still relied on being able to
|
||||
execute the git subcommands, especially built-ins, in "git-foo"
|
||||
|
8
Documentation/RelNotes/2.29.3.txt
Normal file
8
Documentation/RelNotes/2.29.3.txt
Normal file
@ -0,0 +1,8 @@
|
||||
Git v2.29.3 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6,
|
||||
v2.18.5, v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4,
|
||||
v2.25.5, v2.26.3, v2.27.1 and v2.28.1 to address the security
|
||||
issue CVE-2021-21300; see the release notes for these versions
|
||||
for details.
|
55
Documentation/RelNotes/2.30.1.txt
Normal file
55
Documentation/RelNotes/2.30.1.txt
Normal file
@ -0,0 +1,55 @@
|
||||
Git v2.30.1 Release Notes
|
||||
=========================
|
||||
|
||||
This release is primarily to merge fixes accumulated on the 'master'
|
||||
front to prepare for 2.31 release that are still relevant to 2.30.x
|
||||
maintenance track.
|
||||
|
||||
Fixes since v2.30
|
||||
-----------------
|
||||
|
||||
* "git fetch --recurse-submodules" failed to update a submodule
|
||||
when it has an uninitialized (hence of no interest to the user)
|
||||
sub-submodule, which has been corrected.
|
||||
|
||||
* Command line error of "git rebase" are diagnosed earlier.
|
||||
|
||||
* "git stash" did not work well in a sparsely checked out working
|
||||
tree.
|
||||
|
||||
* Some tests expect that "ls -l" output has either '-' or 'x' for
|
||||
group executable bit, but setgid bit can be inherited from parent
|
||||
directory and make these fields 'S' or 's' instead, causing test
|
||||
failures.
|
||||
|
||||
* "git for-each-repo --config=<var> <cmd>" should not run <cmd> for
|
||||
any repository when the configuration variable <var> is not defined
|
||||
even once.
|
||||
|
||||
* "git mergetool --tool-help" was broken in 2.29 and failed to list
|
||||
all the available tools.
|
||||
|
||||
* Fix for procedure to building CI test environment for mac.
|
||||
|
||||
* Newline characters in the host and path part of git:// URL are
|
||||
now forbidden.
|
||||
|
||||
* When more than one commit with the same patch ID appears on one
|
||||
side, "git log --cherry-pick A...B" did not exclude them all when a
|
||||
commit with the same patch ID appears on the other side. Now it
|
||||
does.
|
||||
|
||||
* Documentation for "git fsck" lost stale bits that has become
|
||||
incorrect.
|
||||
|
||||
* Doc for packfile URI feature has been clarified.
|
||||
|
||||
* The implementation of "git branch --sort" wrt the detached HEAD
|
||||
display has always been hacky, which has been cleaned up.
|
||||
|
||||
* Our setting of GitHub CI test jobs were a bit too eager to give up
|
||||
once there is even one failure found. Tweak the knob to allow
|
||||
other jobs keep running even when we see a failure, so that we can
|
||||
find more failures in a single run.
|
||||
|
||||
Also contains minor documentation updates and code clean-ups.
|
8
Documentation/RelNotes/2.30.2.txt
Normal file
8
Documentation/RelNotes/2.30.2.txt
Normal file
@ -0,0 +1,8 @@
|
||||
Git v2.30.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.17.6, v2.18.5,
|
||||
v2.19.6, v2.20.5, v2.21.4, v2.22.5, v2.23.4, v2.24.4, v2.25.5,
|
||||
v2.26.3, v2.27.1, v2.28.1 and v2.29.3 to address the security
|
||||
issue CVE-2021-21300; see the release notes for these versions
|
||||
for details.
|
365
Documentation/RelNotes/2.31.0.txt
Normal file
365
Documentation/RelNotes/2.31.0.txt
Normal file
@ -0,0 +1,365 @@
|
||||
Git 2.31 Release Notes
|
||||
======================
|
||||
|
||||
Updates since v2.30
|
||||
-------------------
|
||||
|
||||
Backward incompatible and other important changes
|
||||
|
||||
* The "pack-redundant" command, which has been left stale with almost
|
||||
unusable performance issues, now warns loudly when it gets used, as
|
||||
we no longer want to recommend its use (instead just "repack -d"
|
||||
instead).
|
||||
|
||||
* The development community has adopted Contributor Covenant v2.0 to
|
||||
update from v1.4 that we have been using.
|
||||
|
||||
* The support for deprecated PCRE1 library has been dropped.
|
||||
|
||||
* Fixes for CVE-2021-21300 in Git 2.30.2 (and earlier) is included.
|
||||
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* The "--format=%(trailers)" mechanism gets enhanced to make it
|
||||
easier to design output for machine consumption.
|
||||
|
||||
* When a user does not tell "git pull" to use rebase or merge, the
|
||||
command gives a loud message telling a user to choose between
|
||||
rebase or merge but creates a merge anyway, forcing users who would
|
||||
want to rebase to redo the operation. Fix an early part of this
|
||||
problem by tightening the condition to give the message---there is
|
||||
no reason to stop or force the user to choose between rebase or
|
||||
merge if the history fast-forwards.
|
||||
|
||||
* The configuration variable 'core.abbrev' can be set to 'no' to
|
||||
force no abbreviation regardless of the hash algorithm.
|
||||
|
||||
* "git rev-parse" can be explicitly told to give output as absolute
|
||||
or relative path with the `--path-format=(absolute|relative)` option.
|
||||
|
||||
* Bash completion (in contrib/) update to make it easier for
|
||||
end-users to add completion for their custom "git" subcommands.
|
||||
|
||||
* "git maintenance" learned to drive scheduled maintenance on
|
||||
platforms whose native scheduling methods are not 'cron'.
|
||||
|
||||
* After expiring a reflog and making a single commit, the reflog for
|
||||
the branch would record a single entry that knows both @{0} and
|
||||
@{1}, but we failed to answer "what commit were we on?", i.e. @{1}
|
||||
|
||||
* "git bundle" learns "--stdin" option to read its refs from the
|
||||
standard input. Also, it now does not lose refs whey they point
|
||||
at the same object.
|
||||
|
||||
* "git log" learned a new "--diff-merges=<how>" option.
|
||||
|
||||
* "git ls-files" can and does show multiple entries when the index is
|
||||
unmerged, which is a source for confusion unless -s/-u option is in
|
||||
use. A new option --deduplicate has been introduced.
|
||||
|
||||
* `git worktree list` now annotates worktrees as prunable, shows
|
||||
locked and prunable attributes in --porcelain mode, and gained
|
||||
a --verbose option.
|
||||
|
||||
* "git clone" tries to locally check out the branch pointed at by
|
||||
HEAD of the remote repository after it is done, but the protocol
|
||||
did not convey the information necessary to do so when copying an
|
||||
empty repository. The protocol v2 learned how to do so.
|
||||
|
||||
* There are other ways than ".." for a single token to denote a
|
||||
"commit range", namely "<rev>^!" and "<rev>^-<n>", but "git
|
||||
range-diff" did not understand them.
|
||||
|
||||
* The "git range-diff" command learned "--(left|right)-only" option
|
||||
to show only one side of the compared range.
|
||||
|
||||
* "git mergetool" feeds three versions (base, local and remote) of
|
||||
a conflicted path unmodified. The command learned to optionally
|
||||
prepare these files with unconflicted parts already resolved.
|
||||
|
||||
* The .mailmap is documented to be read only from the root level of a
|
||||
working tree, but a stray file in a bare repository also was read
|
||||
by accident, which has been corrected.
|
||||
|
||||
* "git maintenance" tool learned a new "pack-refs" maintenance task.
|
||||
|
||||
* The error message given when a configuration variable that is
|
||||
expected to have a boolean value has been improved.
|
||||
|
||||
* Signed commits and tags now allow verification of objects, whose
|
||||
two object names (one in SHA-1, the other in SHA-256) are both
|
||||
signed.
|
||||
|
||||
* "git rev-list" command learned "--disk-usage" option.
|
||||
|
||||
* "git {diff,log} --{skip,rotate}-to=<path>" allows the user to
|
||||
discard diff output for early paths or move them to the end of the
|
||||
output.
|
||||
|
||||
* "git difftool" learned "--skip-to=<path>" option to restart an
|
||||
interrupted session from an arbitrary path.
|
||||
|
||||
* "git grep" has been tweaked to be limited to the sparse checkout
|
||||
paths.
|
||||
|
||||
* "git rebase --[no-]fork-point" gained a configuration variable
|
||||
rebase.forkPoint so that users do not have to keep specifying a
|
||||
non-default setting.
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* A 3-year old test that was not testing anything useful has been
|
||||
corrected.
|
||||
|
||||
* Retire more names with "sha1" in it.
|
||||
|
||||
* The topological walk codepath is covered by new trace2 stats.
|
||||
|
||||
* Update the Code-of-conduct to version 2.0 from the upstream (we've
|
||||
been using version 1.4).
|
||||
|
||||
* "git mktag" validates its input using its own rules before writing
|
||||
a tag object---it has been updated to share the logic with "git
|
||||
fsck".
|
||||
|
||||
* Two new ways to feed configuration variable-value pairs via
|
||||
environment variables have been introduced, and the way
|
||||
GIT_CONFIG_PARAMETERS encodes variable/value pairs has been tweaked
|
||||
to make it more robust.
|
||||
|
||||
* Tests have been updated so that they do not to get affected by the
|
||||
name of the default branch "git init" creates.
|
||||
|
||||
* "git fetch" learns to treat ref updates atomically in all-or-none
|
||||
fashion, just like "git push" does, with the new "--atomic" option.
|
||||
|
||||
* The peel_ref() API has been replaced with peel_iterated_oid().
|
||||
|
||||
* The .use_shell flag in struct child_process that is passed to
|
||||
run_command() API has been clarified with a bit more documentation.
|
||||
|
||||
* Document, clean-up and optimize the code around the cache-tree
|
||||
extension in the index.
|
||||
|
||||
* The ls-refs protocol operation has been optimized to narrow the
|
||||
sub-hierarchy of refs/ it walks to produce response.
|
||||
|
||||
* When removing many branches and tags, the code used to do so one
|
||||
ref at a time. There is another API it can use to delete multiple
|
||||
refs, and it makes quite a lot of performance difference when the
|
||||
refs are packed.
|
||||
|
||||
* The "pack-objects" command needs to iterate over all the tags when
|
||||
automatic tag following is enabled, but it actually iterated over
|
||||
all refs and then discarded everything outside "refs/tags/"
|
||||
hierarchy, which was quite wasteful.
|
||||
|
||||
* A perf script was made more portable.
|
||||
|
||||
* Our setting of GitHub CI test jobs were a bit too eager to give up
|
||||
once there is even one failure found. Tweak the knob to allow
|
||||
other jobs keep running even when we see a failure, so that we can
|
||||
find more failures in a single run.
|
||||
|
||||
* We've carried compatibility codepaths for compilers without
|
||||
variadic macros for quite some time, but the world may be ready for
|
||||
them to be removed. Force compilation failure on exotic platforms
|
||||
where variadic macros are not available to find out who screams in
|
||||
such a way that we can easily revert if it turns out that the world
|
||||
is not yet ready.
|
||||
|
||||
* Code clean-up to ensure our use of hashtables using object names as
|
||||
keys use the "struct object_id" objects, not the raw hash values.
|
||||
|
||||
* Lose the debugging aid that may have been useful in the past, but
|
||||
no longer is, in the "grep" codepaths.
|
||||
|
||||
* Some pretty-format specifiers do not need the data in commit object
|
||||
(e.g. "%H"), but we were over-eager to load and parse it, which has
|
||||
been made even lazier.
|
||||
|
||||
* Get rid of "GETTEXT_POISON" support altogether, which may or may
|
||||
not be controversial.
|
||||
|
||||
* Introduce an on-disk file to record revindex for packdata, which
|
||||
traditionally was always created on the fly and only in-core.
|
||||
|
||||
* The commit-graph learned to use corrected commit dates instead of
|
||||
the generation number to help topological revision traversal.
|
||||
|
||||
* Piecemeal of rewrite of "git bisect" in C continues.
|
||||
|
||||
* When a pager spawned by us exited, the trace log did not record its
|
||||
exit status correctly, which has been corrected.
|
||||
|
||||
* Removal of GIT_TEST_GETTEXT_POISON continues.
|
||||
|
||||
* The code to implement "git merge-base --independent" was poorly
|
||||
done and was kept from the very beginning of the feature.
|
||||
|
||||
* Preliminary changes to fsmonitor integration.
|
||||
|
||||
* Performance improvements for rename detection.
|
||||
|
||||
* The common code to deal with "chunked file format" that is shared
|
||||
by the multi-pack-index and commit-graph files have been factored
|
||||
out, to help codepaths for both filetypes to become more robust.
|
||||
|
||||
* The approach to "fsck" the incoming objects in "index-pack" is
|
||||
attractive for performance reasons (we have them already in core,
|
||||
inflated and ready to be inspected), but fundamentally cannot be
|
||||
applied fully when we receive more than one pack stream, as a tree
|
||||
object in one pack may refer to a blob object in another pack as
|
||||
".gitmodules", when we want to inspect blobs that are used as
|
||||
".gitmodules" file, for example. Teach "index-pack" to emit
|
||||
objects that must be inspected later and check them in the calling
|
||||
"fetch-pack" process.
|
||||
|
||||
* The logic to handle "trailer" related placeholders in the
|
||||
"--format=" mechanisms in the "log" family and "for-each-ref"
|
||||
family is getting unified.
|
||||
|
||||
* Raise the buffer size used when writing the index file out from
|
||||
(obviously too small) 8kB to (clearly sufficiently large) 128kB.
|
||||
|
||||
* It is reported that open() on some platforms (e.g. macOS Big Sur)
|
||||
can return EINTR even though our timers are set up with SA_RESTART.
|
||||
A workaround has been implemented and enabled for macOS to rerun
|
||||
open() transparently from the caller when this happens.
|
||||
|
||||
|
||||
Fixes since v2.30
|
||||
-----------------
|
||||
|
||||
* Diagnose command line error of "git rebase" early.
|
||||
|
||||
* Clean up option descriptions in "git cmd --help".
|
||||
|
||||
* "git stash" did not work well in a sparsely checked out working
|
||||
tree.
|
||||
|
||||
* Some tests expect that "ls -l" output has either '-' or 'x' for
|
||||
group executable bit, but setgid bit can be inherited from parent
|
||||
directory and make these fields 'S' or 's' instead, causing test
|
||||
failures.
|
||||
|
||||
* "git for-each-repo --config=<var> <cmd>" should not run <cmd> for
|
||||
any repository when the configuration variable <var> is not defined
|
||||
even once.
|
||||
|
||||
* Fix 2.29 regression where "git mergetool --tool-help" fails to list
|
||||
all the available tools.
|
||||
|
||||
* Fix for procedure to building CI test environment for mac.
|
||||
|
||||
* The implementation of "git branch --sort" wrt the detached HEAD
|
||||
display has always been hacky, which has been cleaned up.
|
||||
|
||||
* Newline characters in the host and path part of git:// URL are
|
||||
now forbidden.
|
||||
|
||||
* "git diff" showed a submodule working tree with untracked cruft as
|
||||
"Submodule commit <objectname>-dirty", but a natural expectation is
|
||||
that the "-dirty" indicator would align with "git describe --dirty",
|
||||
which does not consider having untracked files in the working tree
|
||||
as source of dirtiness. The inconsistency has been fixed.
|
||||
|
||||
* When more than one commit with the same patch ID appears on one
|
||||
side, "git log --cherry-pick A...B" did not exclude them all when a
|
||||
commit with the same patch ID appears on the other side. Now it
|
||||
does.
|
||||
|
||||
* Documentation for "git fsck" lost stale bits that has become
|
||||
incorrect.
|
||||
|
||||
* Doc fix for packfile URI feature.
|
||||
|
||||
* When "git rebase -i" processes "fixup" insn, there is no reason to
|
||||
clean up the commit log message, but we did the usual stripspace
|
||||
processing. This has been corrected.
|
||||
(merge f7d42ceec5 js/rebase-i-commit-cleanup-fix later to maint).
|
||||
|
||||
* Fix in passing custom args from "git clone" to "upload-pack" on the
|
||||
other side.
|
||||
(merge ad6b5fefbd jv/upload-pack-filter-spec-quotefix later to maint).
|
||||
|
||||
* The command line completion (in contrib/) completed "git branch -d"
|
||||
with branch names, but "git branch -D" offered tagnames in addition,
|
||||
which has been corrected. "git branch -M" had the same problem.
|
||||
(merge 27dc071b9a jk/complete-branch-force-delete later to maint).
|
||||
|
||||
* When commands are started from a subdirectory, they may have to
|
||||
compare the path to the subdirectory (called prefix and found out
|
||||
from $(pwd)) with the tracked paths. On macOS, $(pwd) and
|
||||
readdir() yield decomposed path, while the tracked paths are
|
||||
usually normalized to the precomposed form, causing mismatch. This
|
||||
has been fixed by taking the same approach used to normalize the
|
||||
command line arguments.
|
||||
(merge 5c327502db tb/precompose-prefix-too later to maint).
|
||||
|
||||
* Even though invocations of "die()" were logged to the trace2
|
||||
system, "BUG()"s were not, which has been corrected.
|
||||
(merge 0a9dde4a04 jt/trace2-BUG later to maint).
|
||||
|
||||
* "git grep --untracked" is meant to be "let's ALSO find in these
|
||||
files on the filesystem" when looking for matches in the working
|
||||
tree files, and does not make any sense if the primary search is
|
||||
done against the index, or the tree objects. The "--cached" and
|
||||
"--untracked" options have been marked as mutually incompatible.
|
||||
(merge 0c5d83b248 mt/grep-cached-untracked later to maint).
|
||||
|
||||
* Fix "git fsck --name-objects" which apparently has not been used by
|
||||
anybody who is motivated enough to report breakage.
|
||||
(merge e89f89361c js/fsck-name-objects-fix later to maint).
|
||||
|
||||
* Avoid individual tests in t5411 from getting affected by each other
|
||||
by forcing them to use separate output files during the test.
|
||||
(merge 822ee894f6 jx/t5411-unique-filenames later to maint).
|
||||
|
||||
* Test to make sure "git rev-parse one-thing one-thing" gives
|
||||
the same thing twice (when one-thing is --since=X).
|
||||
(merge a5cdca4520 ew/rev-parse-since-test later to maint).
|
||||
|
||||
* When certain features (e.g. grafts) used in the repository are
|
||||
incompatible with the use of the commit-graph, we used to silently
|
||||
turned commit-graph off; we now tell the user what we are doing.
|
||||
(merge c85eec7fc3 js/commit-graph-warning later to maint).
|
||||
|
||||
* Objects that lost references can be pruned away, even when they
|
||||
have notes attached to it (and these notes will become dangling,
|
||||
which in turn can be pruned with "git notes prune"). This has been
|
||||
clarified in the documentation.
|
||||
(merge fa9ab027ba mz/doc-notes-are-not-anchors later to maint).
|
||||
|
||||
* The error codepath around the "--temp/--prefix" feature of "git
|
||||
checkout-index" has been improved.
|
||||
(merge 3f7ba60350 mt/checkout-index-corner-cases later to maint).
|
||||
|
||||
* The "git maintenance register" command had trouble registering bare
|
||||
repositories, which had been corrected.
|
||||
|
||||
* A handful of multi-word configuration variable names in
|
||||
documentation that are spelled in all lowercase have been corrected
|
||||
to use the more canonical camelCase.
|
||||
(merge 7dd0eaa39c dl/doc-config-camelcase later to maint).
|
||||
|
||||
* "git push $there --delete ''" should have been diagnosed as an
|
||||
error, but instead turned into a matching push, which has been
|
||||
corrected.
|
||||
(merge 20e416409f jc/push-delete-nothing later to maint).
|
||||
|
||||
* Test script modernization.
|
||||
(merge 488acf15df sv/t7001-modernize later to maint).
|
||||
|
||||
* An under-allocation for the untracked cache data has been corrected.
|
||||
(merge 6347d649bc jh/untracked-cache-fix later to maint).
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge e3f5da7e60 sg/t7800-difftool-robustify later to maint).
|
||||
(merge 9d336655ba js/doc-proto-v2-response-end later to maint).
|
||||
(merge 1b5b8cf072 jc/maint-column-doc-typofix later to maint).
|
||||
(merge 3a837b58e3 cw/pack-config-doc later to maint).
|
||||
(merge 01168a9d89 ug/doc-commit-approxidate later to maint).
|
||||
(merge b865734760 js/params-vs-args later to maint).
|
27
Documentation/RelNotes/2.31.1.txt
Normal file
27
Documentation/RelNotes/2.31.1.txt
Normal file
@ -0,0 +1,27 @@
|
||||
Git 2.31.1 Release Notes
|
||||
========================
|
||||
|
||||
Fixes since v2.31
|
||||
-----------------
|
||||
|
||||
* The fsmonitor interface read from its input without making sure
|
||||
there is something to read from. This bug is new in 2.31
|
||||
timeframe.
|
||||
|
||||
* The data structure used by fsmonitor interface was not properly
|
||||
duplicated during an in-core merge, leading to use-after-free etc.
|
||||
|
||||
* "git bisect" reimplemented more in C during 2.30 timeframe did not
|
||||
take an annotated tag as a good/bad endpoint well. This regression
|
||||
has been corrected.
|
||||
|
||||
* Fix macros that can silently inject unintended null-statements.
|
||||
|
||||
* CALLOC_ARRAY() macro replaces many uses of xcalloc().
|
||||
|
||||
* Update insn in Makefile comments to run fuzz-all target.
|
||||
|
||||
* Fix a corner case bug in "git mv" on case insensitive systems,
|
||||
which was introduced in 2.29 timeframe.
|
||||
|
||||
Also contains various documentation updates and code clean-ups.
|
416
Documentation/RelNotes/2.32.0.txt
Normal file
416
Documentation/RelNotes/2.32.0.txt
Normal file
@ -0,0 +1,416 @@
|
||||
Git 2.32 Release Notes
|
||||
======================
|
||||
|
||||
Backward compatibility notes
|
||||
----------------------------
|
||||
|
||||
* ".gitattributes", ".gitignore", and ".mailmap" files that are
|
||||
symbolic links are ignored.
|
||||
|
||||
* "git apply --3way" used to first attempt a straight application,
|
||||
and only fell back to the 3-way merge algorithm when the stright
|
||||
application failed. Starting with this version, the command will
|
||||
first try the 3-way merge algorithm and only when it fails (either
|
||||
resulting with conflict or the base versions of blobs are missing),
|
||||
falls back to the usual patch application.
|
||||
|
||||
|
||||
Updates since v2.31
|
||||
-------------------
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* It does not make sense to make ".gitattributes", ".gitignore" and
|
||||
".mailmap" symlinks, as they are supposed to be usable from the
|
||||
object store (think: bare repositories where HEAD:.mailmap etc. are
|
||||
used). When these files are symbolic links, we used to read the
|
||||
contents of the files pointed by them by mistake, which has been
|
||||
corrected.
|
||||
|
||||
* "git stash show" learned to optionally show untracked part of the
|
||||
stash.
|
||||
|
||||
* "git log --format='...'" learned "%(describe)" placeholder.
|
||||
|
||||
* "git repack" so far has been only capable of repacking everything
|
||||
under the sun into a single pack (or split by size). A cleverer
|
||||
strategy to reduce the cost of repacking a repository has been
|
||||
introduced.
|
||||
|
||||
* The http codepath learned to let the credential layer to cache the
|
||||
password used to unlock a certificate that has successfully been
|
||||
used.
|
||||
|
||||
* "git commit --fixup=<commit>", which was to tweak the changes made
|
||||
to the contents while keeping the original log message intact,
|
||||
learned "--fixup=(amend|reword):<commit>", that can be used to
|
||||
tweak both the message and the contents, and only the message,
|
||||
respectively.
|
||||
|
||||
* "git send-email" learned to honor the core.hooksPath configuration.
|
||||
|
||||
* "git format-patch -v<n>" learned to allow a reroll count that is
|
||||
not an integer.
|
||||
|
||||
* "git commit" learned "--trailer <key>[=<value>]" option; together
|
||||
with the interpret-trailers command, this will make it easier to
|
||||
support custom trailers.
|
||||
|
||||
* "git clone --reject-shallow" option fails the clone as soon as we
|
||||
notice that we are cloning from a shallow repository.
|
||||
|
||||
* A configuration variable has been added to force tips of certain
|
||||
refs to be given a reachability bitmap.
|
||||
|
||||
* "gitweb" learned "e-mail privacy" feature to redact strings that
|
||||
look like e-mail addresses on various pages.
|
||||
|
||||
* "git apply --3way" has always been "to fall back to 3-way merge
|
||||
only when straight application fails". Swap the order of falling
|
||||
back so that 3-way is always attempted first (only when the option
|
||||
is given, of course) and then straight patch application is used as
|
||||
a fallback when it fails.
|
||||
|
||||
* "git apply" now takes "--3way" and "--cached" at the same time, and
|
||||
work and record results only in the index.
|
||||
|
||||
* The command line completion (in contrib/) has learned that
|
||||
CHERRY_PICK_HEAD is a possible pseudo-ref.
|
||||
|
||||
* Userdiff patterns for "Scheme" has been added.
|
||||
|
||||
* "git log" learned "--diff-merges=<style>" option, with an
|
||||
associated configuration variable log.diffMerges.
|
||||
|
||||
* "git log --format=..." placeholders learned %ah/%ch placeholders to
|
||||
request the --date=human output.
|
||||
|
||||
* Replace GIT_CONFIG_NOSYSTEM mechanism to decline from reading the
|
||||
system-wide configuration file with GIT_CONFIG_SYSTEM that lets
|
||||
users specify from which file to read the system-wide configuration
|
||||
(setting it to an empty file would essentially be the same as
|
||||
setting NOSYSTEM), and introduce GIT_CONFIG_GLOBAL to override the
|
||||
per-user configuration in $HOME/.gitconfig.
|
||||
|
||||
* "git add" and "git rm" learned not to touch those paths that are
|
||||
outside of sparse checkout.
|
||||
|
||||
* "git rev-list" learns the "--filter=object:type=<type>" option,
|
||||
which can be used to exclude objects of the given kind from the
|
||||
packfile generated by pack-objects.
|
||||
|
||||
* The command line completion (in contrib/) for "git stash" has been
|
||||
updated.
|
||||
|
||||
* "git subtree" updates.
|
||||
|
||||
* It is now documented that "format-patch" skips merges.
|
||||
|
||||
* Options to "git pack-objects" that take numeric values like
|
||||
--window and --depth should not accept negative values; the input
|
||||
validation has been tightened.
|
||||
|
||||
* The way the command line specified by the trailer.<token>.command
|
||||
configuration variable receives the end-user supplied value was
|
||||
both error prone and misleading. An alternative to achieve the
|
||||
same goal in a safer and more intuitive way has been added, as
|
||||
the trailer.<token>.cmd configuration variable, to replace it.
|
||||
|
||||
* "git add -i --dry-run" does not dry-run, which was surprising. The
|
||||
combination of options has taught to error out.
|
||||
|
||||
* "git push" learns to discover common ancestor with the receiving
|
||||
end over protocol v2. This will hopefully make "git push" as
|
||||
efficient as "git fetch" in avoiding objects from getting
|
||||
transferred unnecessarily.
|
||||
|
||||
* "git mailinfo" (hence "git am") learned the "--quoted-cr" option to
|
||||
control how lines ending with CRLF wrapped in base64 or qp are
|
||||
handled.
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* Rename detection rework continues.
|
||||
|
||||
* GIT_TEST_FAIL_PREREQS is a mechanism to skip test pieces with
|
||||
prerequisites to catch broken tests that depend on the side effects
|
||||
of optional pieces, but did not work at all when negative
|
||||
prerequisites were involved.
|
||||
(merge 27d578d904 jk/fail-prereq-testfix later to maint).
|
||||
|
||||
* "git diff-index" codepath has been taught to trust fsmonitor status
|
||||
to reduce number of lstat() calls.
|
||||
(merge 7e5aa13d2c nk/diff-index-fsmonitor later to maint).
|
||||
|
||||
* Reorganize Makefile to allow building git.o and other essential
|
||||
objects without extra stuff needed only for testing.
|
||||
|
||||
* Preparatory API changes for parallel checkout.
|
||||
|
||||
* A simple IPC interface gets introduced to build services like
|
||||
fsmonitor on top.
|
||||
|
||||
* Fsck API clean-up.
|
||||
|
||||
* SECURITY.md that is facing individual contributors and end users
|
||||
has been introduced. Also a procedure to follow when preparing
|
||||
embargoed releases has been spelled out.
|
||||
(merge 09420b7648 js/security-md later to maint).
|
||||
|
||||
* Optimize "rev-list --use-bitmap-index --objects" corner case that
|
||||
uses negative tags as the stopping points.
|
||||
|
||||
* CMake update for vsbuild.
|
||||
|
||||
* An on-disk reverse-index to map the in-pack location of an object
|
||||
back to its object name across multiple packfiles is introduced.
|
||||
|
||||
* Generate [ec]tags under $(QUIET_GEN).
|
||||
|
||||
* Clean-up codepaths that implements "git send-email --validate"
|
||||
option and improves the message from it.
|
||||
|
||||
* The last remnant of gettext-poison has been removed.
|
||||
|
||||
* The test framework has been taught to optionally turn the default
|
||||
merge strategy to "ort" throughout the system where we use
|
||||
three-way merges internally, like cherry-pick, rebase etc.,
|
||||
primarily to enhance its test coverage (the strategy has been
|
||||
available as an explicit "-s ort" choice).
|
||||
|
||||
* A bit of code clean-up and a lot of test clean-up around userdiff
|
||||
area.
|
||||
|
||||
* Handling of "promisor packs" that allows certain objects to be
|
||||
missing and lazily retrievable has been optimized (a bit).
|
||||
|
||||
* When packet_write() fails, we gave an extra error message
|
||||
unnecessarily, which has been corrected.
|
||||
|
||||
* The checkout machinery has been taught to perform the actual
|
||||
write-out of the files in parallel when able.
|
||||
|
||||
* Show errno in the trace output in the error codepath that calls
|
||||
read_raw_ref method.
|
||||
|
||||
* Effort to make the command line completion (in contrib/) safe with
|
||||
"set -u" continues.
|
||||
|
||||
* Tweak a few tests for "log --format=..." that show timestamps in
|
||||
various formats.
|
||||
|
||||
* The reflog expiry machinery has been taught to emit trace events.
|
||||
|
||||
* Over-the-wire protocol learns a new request type to ask for object
|
||||
sizes given a list of object names.
|
||||
|
||||
|
||||
Fixes since v2.31
|
||||
-----------------
|
||||
|
||||
* The fsmonitor interface read from its input without making sure
|
||||
there is something to read from. This bug is new in 2.31
|
||||
timeframe.
|
||||
|
||||
* The data structure used by fsmonitor interface was not properly
|
||||
duplicated during an in-core merge, leading to use-after-free etc.
|
||||
|
||||
* "git bisect" reimplemented more in C during 2.30 timeframe did not
|
||||
take an annotated tag as a good/bad endpoint well. This regression
|
||||
has been corrected.
|
||||
|
||||
* Fix macros that can silently inject unintended null-statements.
|
||||
|
||||
* CALLOC_ARRAY() macro replaces many uses of xcalloc().
|
||||
|
||||
* Update insn in Makefile comments to run fuzz-all target.
|
||||
|
||||
* Fix a corner case bug in "git mv" on case insensitive systems,
|
||||
which was introduced in 2.29 timeframe.
|
||||
|
||||
* We had a code to diagnose and die cleanly when a required
|
||||
clean/smudge filter is missing, but an assert before that
|
||||
unnecessarily fired, hiding the end-user facing die() message.
|
||||
(merge 6fab35f748 mt/cleanly-die-upon-missing-required-filter later to maint).
|
||||
|
||||
* Update C code that sets a few configuration variables when a remote
|
||||
is configured so that it spells configuration variable names in the
|
||||
canonical camelCase.
|
||||
(merge 0f1da600e6 ab/remote-write-config-in-camel-case later to maint).
|
||||
|
||||
* A new configuration variable has been introduced to allow choosing
|
||||
which version of the generation number gets used in the
|
||||
commit-graph file.
|
||||
(merge 702110aac6 ds/commit-graph-generation-config later to maint).
|
||||
|
||||
* Perf test update to work better in secondary worktrees.
|
||||
(merge 36e834abc1 jk/perf-in-worktrees later to maint).
|
||||
|
||||
* Updates to memory allocation code around the use of pcre2 library.
|
||||
(merge c1760352e0 ab/grep-pcre2-allocfix later to maint).
|
||||
|
||||
* "git -c core.bare=false clone --bare ..." would have segfaulted,
|
||||
which has been corrected.
|
||||
(merge 75555676ad bc/clone-bare-with-conflicting-config later to maint).
|
||||
|
||||
* When "git checkout" removes a path that does not exist in the
|
||||
commit it is checking out, it wasn't careful enough not to follow
|
||||
symbolic links, which has been corrected.
|
||||
(merge fab78a0c3d mt/checkout-remove-nofollow later to maint).
|
||||
|
||||
* A few option description strings started with capital letters,
|
||||
which were corrected.
|
||||
(merge 5ee90326dc cc/downcase-opt-help later to maint).
|
||||
|
||||
* Plug or annotate remaining leaks that trigger while running the
|
||||
very basic set of tests.
|
||||
(merge 68ffe095a2 ah/plugleaks later to maint).
|
||||
|
||||
* The hashwrite() API uses a buffering mechanism to avoid calling
|
||||
write(2) too frequently. This logic has been refactored to be
|
||||
easier to understand.
|
||||
(merge ddaf1f62e3 ds/clarify-hashwrite later to maint).
|
||||
|
||||
* "git cherry-pick/revert" with or without "--[no-]edit" did not spawn
|
||||
the editor as expected (e.g. "revert --no-edit" after a conflict
|
||||
still asked to edit the message), which has been corrected.
|
||||
(merge 39edfd5cbc en/sequencer-edit-upon-conflict-fix later to maint).
|
||||
|
||||
* "git daemon" has been tightened against systems that take backslash
|
||||
as directory separator.
|
||||
(merge 9a7f1ce8b7 rs/daemon-sanitize-dir-sep later to maint).
|
||||
|
||||
* A NULL-dereference bug has been corrected in an error codepath in
|
||||
"git for-each-ref", "git branch --list" etc.
|
||||
(merge c685450880 jk/ref-filter-segfault-fix later to maint).
|
||||
|
||||
* Streamline the codepath to fix the UTF-8 encoding issues in the
|
||||
argv[] and the prefix on macOS.
|
||||
(merge c7d0e61016 tb/precompose-prefix-simplify later to maint).
|
||||
|
||||
* The command-line completion script (in contrib/) had a couple of
|
||||
references that would have given a warning under the "-u" (nounset)
|
||||
option.
|
||||
(merge c5c0548d79 vs/completion-with-set-u later to maint).
|
||||
|
||||
* When "git pack-objects" makes a literal copy of a part of existing
|
||||
packfile using the reachability bitmaps, its update to the progress
|
||||
meter was broken.
|
||||
(merge 8e118e8490 jk/pack-objects-bitmap-progress-fix later to maint).
|
||||
|
||||
* The dependencies for config-list.h and command-list.h were broken
|
||||
when the former was split out of the latter, which has been
|
||||
corrected.
|
||||
(merge 56550ea718 sg/bugreport-fixes later to maint).
|
||||
|
||||
* "git push --quiet --set-upstream" was not quiet when setting the
|
||||
upstream branch configuration, which has been corrected.
|
||||
(merge f3cce896a8 ow/push-quiet-set-upstream later to maint).
|
||||
|
||||
* The prefetch task in "git maintenance" assumed that "git fetch"
|
||||
from any remote would fetch all its local branches, which would
|
||||
fetch too much if the user is interested in only a subset of
|
||||
branches there.
|
||||
(merge 32f67888d8 ds/maintenance-prefetch-fix later to maint).
|
||||
|
||||
* Clarify that pathnames recorded in Git trees are most often (but
|
||||
not necessarily) encoded in UTF-8.
|
||||
(merge 9364bf465d ab/pathname-encoding-doc later to maint).
|
||||
|
||||
* "git --config-env var=val cmd" weren't accepted (only
|
||||
--config-env=var=val was).
|
||||
(merge c331551ccf ps/config-env-option-with-separate-value later to maint).
|
||||
|
||||
* When the reachability bitmap is in effect, the "do not lose
|
||||
recently created objects and those that are reachable from them"
|
||||
safety to protect us from races were disabled by mistake, which has
|
||||
been corrected.
|
||||
(merge 2ba582ba4c jk/prune-with-bitmap-fix later to maint).
|
||||
|
||||
* Cygwin pathname handling fix.
|
||||
(merge bccc37fdc7 ad/cygwin-no-backslashes-in-paths later to maint).
|
||||
|
||||
* "git rebase --[no-]reschedule-failed-exec" did not work well with
|
||||
its configuration variable, which has been corrected.
|
||||
(merge e5b32bffd1 ab/rebase-no-reschedule-failed-exec later to maint).
|
||||
|
||||
* Portability fix for command line completion script (in contrib/).
|
||||
(merge f2acf763e2 si/zsh-complete-comment-fix later to maint).
|
||||
|
||||
* "git repack -A -d" in a partial clone unnecessarily loosened
|
||||
objects in promisor pack.
|
||||
|
||||
* "git bisect skip" when custom words are used for new/old did not
|
||||
work, which has been corrected.
|
||||
|
||||
* A few variants of informational message "Already up-to-date" has
|
||||
been rephrased.
|
||||
(merge ad9322da03 js/merge-already-up-to-date-message-reword later to maint).
|
||||
|
||||
* "git submodule update --quiet" did not propagate the quiet option
|
||||
down to underlying "git fetch", which has been corrected.
|
||||
(merge 62af4bdd42 nc/submodule-update-quiet later to maint).
|
||||
|
||||
* Document that our test can use "local" keyword.
|
||||
(merge a84fd3bcc6 jc/test-allows-local later to maint).
|
||||
|
||||
* The word-diff mode has been taught to work better with a word
|
||||
regexp that can match an empty string.
|
||||
(merge 0324e8fc6b pw/word-diff-zero-width-matches later to maint).
|
||||
|
||||
* "git p4" learned to find branch points more efficiently.
|
||||
(merge 6b79818bfb jk/p4-locate-branch-point-optim later to maint).
|
||||
|
||||
* When "git update-ref -d" removes a ref that is packed, it left
|
||||
empty directories under $GIT_DIR/refs/ for
|
||||
(merge 5f03e5126d wc/packed-ref-removal-cleanup later to maint).
|
||||
|
||||
* "git clean" and "git ls-files -i" had confusion around working on
|
||||
or showing ignored paths inside an ignored directory, which has
|
||||
been corrected.
|
||||
(merge b548f0f156 en/dir-traversal later to maint).
|
||||
|
||||
* The handling of "%(push)" formatting element of "for-each-ref" and
|
||||
friends was broken when the same codepath started handling
|
||||
"%(push:<what>)", which has been corrected.
|
||||
(merge 1e1c4c5eac zh/ref-filter-push-remote-fix later to maint).
|
||||
|
||||
* The bash prompt script (in contrib/) did not work under "set -u".
|
||||
(merge 5c0cbdb107 en/prompt-under-set-u later to maint).
|
||||
|
||||
* The "chainlint" feature in the test framework is a handy way to
|
||||
catch common mistakes in writing new tests, but tends to get
|
||||
expensive. An knob to selectively disable it has been introduced
|
||||
to help running tests that the developer has not modified.
|
||||
(merge 2d86a96220 jk/test-chainlint-softer later to maint).
|
||||
|
||||
* The "rev-parse" command did not diagnose the lack of argument to
|
||||
"--path-format" option, which was introduced in v2.31 era, which
|
||||
has been corrected.
|
||||
(merge 99fc555188 wm/rev-parse-path-format-wo-arg later to maint).
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge f451960708 dl/cat-file-doc-cleanup later to maint).
|
||||
(merge 12604a8d0c sv/t9801-test-path-is-file-cleanup later to maint).
|
||||
(merge ea7e63921c jr/doc-ignore-typofix later to maint).
|
||||
(merge 23c781f173 ps/update-ref-trans-hook-doc later to maint).
|
||||
(merge 42efa1231a jk/filter-branch-sha256 later to maint).
|
||||
(merge 4c8e3dca6e tb/push-simple-uses-branch-merge-config later to maint).
|
||||
(merge 6534d436a2 bs/asciidoctor-installation-hints later to maint).
|
||||
(merge 47957485b3 ab/read-tree later to maint).
|
||||
(merge 2be927f3d1 ab/diff-no-index-tests later to maint).
|
||||
(merge 76593c09bb ab/detox-gettext-tests later to maint).
|
||||
(merge 28e29ee38b jc/doc-format-patch-clarify later to maint).
|
||||
(merge fc12b6fdde fm/user-manual-use-preface later to maint).
|
||||
(merge dba94e3a85 cc/test-helper-bloom-usage-fix later to maint).
|
||||
(merge 61a7660516 hn/reftable-tables-doc-update later to maint).
|
||||
(merge 81ed96a9b2 jt/fetch-pack-request-fix later to maint).
|
||||
(merge 151b6c2dd7 jc/doc-do-not-capitalize-clarification later to maint).
|
||||
(merge 9160068ac6 js/access-nul-emulation-on-windows later to maint).
|
||||
(merge 7a14acdbe6 po/diff-patch-doc later to maint).
|
||||
(merge f91371b948 pw/patience-diff-clean-up later to maint).
|
||||
(merge 3a7f0908b6 mt/clean-clean later to maint).
|
||||
(merge d4e2d15a8b ab/streaming-simplify later to maint).
|
||||
(merge 0e59f7ad67 ah/merge-ort-i18n later to maint).
|
||||
(merge e6f68f62e0 ls/typofix later to maint).
|
279
Documentation/RelNotes/2.33.0.txt
Normal file
279
Documentation/RelNotes/2.33.0.txt
Normal file
@ -0,0 +1,279 @@
|
||||
Git 2.33 Release Notes
|
||||
======================
|
||||
|
||||
Updates since Git 2.32
|
||||
----------------------
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* "git send-email" learned the "--sendmail-cmd" command line option
|
||||
and the "sendemail.sendmailCmd" configuration variable, which is a
|
||||
more sensible approach than the current way of repurposing the
|
||||
"smtp-server" that is meant to name the server to instead name the
|
||||
command to talk to the server.
|
||||
|
||||
* The userdiff pattern for C# learned the token "record".
|
||||
|
||||
* "git rev-list" learns to omit the "commit <object-name>" header
|
||||
lines from the output with the `--no-commit-header` option.
|
||||
|
||||
* "git worktree add --lock" learned to record why the worktree is
|
||||
locked with a custom message.
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* The code to handle the "--format" option in "for-each-ref" and
|
||||
friends made too many string comparisons on %(atom)s used in the
|
||||
format string, which has been corrected by converting them into
|
||||
enum when the format string is parsed.
|
||||
|
||||
* Use the hashfile API in the codepath that writes the index file to
|
||||
reduce code duplication.
|
||||
|
||||
* Repeated rename detections in a sequence of mergy operations have
|
||||
been optimized out for the 'ort' merge strategy.
|
||||
|
||||
* Preliminary clean-up of tests before the main reftable changes
|
||||
hits the codebase.
|
||||
|
||||
* The backend for "diff -G/-S" has been updated to use pcre2 engine
|
||||
when available.
|
||||
|
||||
* Use ".DELETE_ON_ERROR" pseudo target to simplify our Makefile.
|
||||
|
||||
* Code cleanup around struct_type_init() functions.
|
||||
|
||||
* "git send-email" optimization.
|
||||
|
||||
* GitHub Actions / CI update.
|
||||
(merge 0dc787a9f2 js/ci-windows-update later to maint).
|
||||
|
||||
* Object accesses in repositories with many alternate object store
|
||||
have been optimized.
|
||||
|
||||
* "git log" has been optimized not to waste cycles to load ref
|
||||
decoration data that may not be needed.
|
||||
|
||||
* Many "printf"-like helper functions we have have been annotated
|
||||
with __attribute__() to catch placeholder/parameter mismatches.
|
||||
|
||||
* Tests that cover protocol bits have been updated and helpers
|
||||
used there have been consolidated.
|
||||
|
||||
* The CI gained a new job to run "make sparse" check.
|
||||
|
||||
* "git status" codepath learned to work with sparsely populated index
|
||||
without hydrating it fully.
|
||||
|
||||
* A guideline for gender neutral documentation has been added.
|
||||
|
||||
* Documentation on "git diff -l<n>" and diff.renameLimit have been
|
||||
updated, and the defaults for these limits have been raised.
|
||||
|
||||
* The completion support used to offer alternate spelling of options
|
||||
that exist only for compatibility, which has been corrected.
|
||||
|
||||
* "TEST_OUTPUT_DIRECTORY=there make test" failed to work, which has
|
||||
been corrected.
|
||||
|
||||
* "git bundle" gained more test coverage.
|
||||
|
||||
* "git read-tree" had a codepath where blobs are fetched one-by-one
|
||||
from the promisor remote, which has been corrected to fetch in bulk.
|
||||
|
||||
* Rewrite of "git submodule" in C continues.
|
||||
|
||||
* "git checkout" and "git commit" learn to work without unnecessarily
|
||||
expanding sparse indexes.
|
||||
|
||||
|
||||
Fixes since v2.32
|
||||
-----------------
|
||||
|
||||
* We historically rejected a very short string as an author name
|
||||
while accepting a patch e-mail, which has been loosened.
|
||||
(merge 72ee47ceeb ef/mailinfo-short-name later to maint).
|
||||
|
||||
* The parallel checkout codepath did not initialize object ID field
|
||||
used to talk to the worker processes in a futureproof way.
|
||||
|
||||
* Rewrite code that triggers undefined behaviour warning.
|
||||
(merge aafa5df0df jn/size-t-casted-to-off-t-fix later to maint).
|
||||
|
||||
* The description of "fast-forward" in the glossary has been updated.
|
||||
(merge e22f2daed0 ry/clarify-fast-forward-in-glossary later to maint).
|
||||
|
||||
* Recent "git clone" left a temporary directory behind when the
|
||||
transport layer returned an failure.
|
||||
(merge 6aacb7d861 jk/clone-clean-upon-transport-error later to maint).
|
||||
|
||||
* "git fetch" over protocol v2 left its side of the socket open after
|
||||
it finished speaking, which unnecessarily wasted the resource on
|
||||
the other side.
|
||||
(merge ae1a7eefff jk/fetch-pack-v2-half-close-early later to maint).
|
||||
|
||||
* The command line completion (in contrib/) learned that "git diff"
|
||||
takes the "--anchored" option.
|
||||
(merge d1e7c2cac9 tb/complete-diff-anchored later to maint).
|
||||
|
||||
* "git-svn" tests assumed that "locale -a", which is used to pick an
|
||||
available UTF-8 locale, is available everywhere. A knob has been
|
||||
introduced to allow testers to specify a suitable locale to use.
|
||||
(merge 482c962de4 dd/svn-test-wo-locale-a later to maint).
|
||||
|
||||
* Update "git subtree" to work better on Windows.
|
||||
(merge 77f37de39f js/subtree-on-windows-fix later to maint).
|
||||
|
||||
* Remove multimail from contrib/
|
||||
(merge f74d11471f js/no-more-multimail later to maint).
|
||||
|
||||
* Make the codebase MSAN clean.
|
||||
(merge 4dbc55e87d ah/uninitialized-reads-fix later to maint).
|
||||
|
||||
* Work around inefficient glob substitution in older versions of bash
|
||||
by rewriting parts of a test.
|
||||
(merge eb87c6f559 jx/t6020-with-older-bash later to maint).
|
||||
|
||||
* Avoid duplicated work while building reachability bitmaps.
|
||||
(merge aa9ad6fee5 jk/bitmap-tree-optim later to maint).
|
||||
|
||||
* We broke "GIT_SKIP_TESTS=t?000" to skip certain tests in recent
|
||||
update, which got fixed.
|
||||
|
||||
* The side-band demultiplexer that is used to display progress output
|
||||
from the remote end did not clear the line properly when the end of
|
||||
line hits at a packet boundary, which has been corrected.
|
||||
|
||||
* Some test scripts assumed that readlink(1) was universally
|
||||
installed and available, which is not the case.
|
||||
(merge 7c0afdf23c jk/test-without-readlink-1 later to maint).
|
||||
|
||||
* Recent update to completion script (in contrib/) broke those who
|
||||
use the __git_complete helper to define completion to their custom
|
||||
command.
|
||||
(merge cea232194d fw/complete-cmd-idx-fix later to maint).
|
||||
|
||||
* Output from some of our tests were affected by the width of the
|
||||
terminal that they were run in, which has been corrected by
|
||||
exporting a fixed value in the COLUMNS environment.
|
||||
(merge c49a177bec ab/fix-columns-to-80-during-tests later to maint).
|
||||
|
||||
* On Windows, mergetool has been taught to find kdiff3.exe just like
|
||||
it finds winmerge.exe.
|
||||
(merge 47eb4c6890 ms/mergetools-kdiff3-on-windows later to maint).
|
||||
|
||||
* When we cannot figure out how wide the terminal is, we use a
|
||||
fallback value of 80 ourselves (which cannot be avoided), but when
|
||||
we run the pager, we export it in COLUMNS, which forces the pager
|
||||
to use the hardcoded value, even when the pager is perfectly
|
||||
capable to figure it out itself. Stop exporting COLUMNS when we
|
||||
fall back on the hardcoded default value for our own use.
|
||||
(merge 9b6e2c8b98 js/stop-exporting-bogus-columns later to maint).
|
||||
|
||||
* "git cat-file --batch-all-objects"" misbehaved when "--batch" is in
|
||||
use and did not ask for certain object traits.
|
||||
(merge ee02ac6164 zh/cat-file-batch-fix later to maint).
|
||||
|
||||
* Some code and doc clarification around "git push".
|
||||
|
||||
* The "union" conflict resultion variant misbehaved when used with
|
||||
binary merge driver.
|
||||
(merge 382b601acd jk/union-merge-binary later to maint).
|
||||
|
||||
* Prevent "git p4" from failing to submit changes to binary file.
|
||||
(merge 54662d5958 dc/p4-binary-submit-fix later to maint).
|
||||
|
||||
* "git grep --and -e foo" ought to have been diagnosed as an error
|
||||
but instead segfaulted, which has been corrected.
|
||||
(merge fe7fe62d8d rs/grep-parser-fix later to maint).
|
||||
|
||||
* The merge code had funny interactions between content based rename
|
||||
detection and directory rename detection.
|
||||
(merge 3585d0ea23 en/merge-dir-rename-corner-case-fix later to maint).
|
||||
|
||||
* When rebuilding the multi-pack index file reusing an existing one,
|
||||
we used to blindly trust the existing file and ended up carrying
|
||||
corrupted data into the updated file, which has been corrected.
|
||||
(merge f89ecf7988 tb/midx-use-checksum later to maint).
|
||||
|
||||
* Update the location of system-side configuration file on Windows.
|
||||
(merge e355307692 js/gfw-system-config-loc-fix later to maint).
|
||||
|
||||
* Code recently added to support common ancestry negotiation during
|
||||
"git push" did not sanity check its arguments carefully enough.
|
||||
(merge eff40457a4 ab/fetch-negotiate-segv-fix later to maint).
|
||||
|
||||
* Update the documentation not to assume users are of certain gender
|
||||
and adds to guidelines to do so.
|
||||
(merge 46a237f42f ds/gender-neutral-doc later to maint).
|
||||
|
||||
* "git commit --allow-empty-message" won't abort the operation upon
|
||||
an empty message, but the hint shown in the editor said otherwise.
|
||||
(merge 6f70f00b4f hj/commit-allow-empty-message later to maint).
|
||||
|
||||
* The code that gives an error message in "git multi-pack-index" when
|
||||
no subcommand is given tried to print a NULL pointer as a strong,
|
||||
which has been corrected.
|
||||
(merge 88617d11f9 tb/reverse-midx later to maint).
|
||||
|
||||
* CI update.
|
||||
(merge a066a90db6 js/ci-check-whitespace-updates later to maint).
|
||||
|
||||
* Documentation fix for "git pull --rebase=no".
|
||||
(merge d3236becec fc/pull-no-rebase-merges-theirs-into-ours later to maint).
|
||||
|
||||
* A race between repacking and using pack bitmaps has been corrected.
|
||||
(merge dc1daacdcc jk/check-pack-valid-before-opening-bitmap later to maint).
|
||||
|
||||
* The local changes stashed by "git merge --autostash" were lost when
|
||||
the merge failed in certain ways, which has been corrected.
|
||||
|
||||
* Windows rmdir() equivalent behaves differently from POSIX ones in
|
||||
that when used on a symbolic link that points at a directory, the
|
||||
target directory gets removed, which has been corrected.
|
||||
(merge 3e7d4888e5 tb/mingw-rmdir-symlink-to-directory later to maint).
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge bfe35a6165 ah/doc-describe later to maint).
|
||||
(merge f302c1e4aa jc/clarify-revision-range later to maint).
|
||||
(merge 3127ff90ea tl/fix-packfile-uri-doc later to maint).
|
||||
(merge a84216c684 jk/doc-color-pager later to maint).
|
||||
(merge 4e0a64a713 ab/trace2-squelch-gcc-warning later to maint).
|
||||
(merge 225f7fa847 ps/rev-list-object-type-filter later to maint).
|
||||
(merge 5317dfeaed dd/honor-users-tar-in-tests later to maint).
|
||||
(merge ace6d8e3d6 tk/partial-clone-repack-doc later to maint).
|
||||
(merge 7ba68e0cf1 js/trace2-discard-event-docfix later to maint).
|
||||
(merge 8603c419d3 fc/doc-default-to-upstream-config later to maint).
|
||||
(merge 1d72b604ef jk/revision-squelch-gcc-warning later to maint).
|
||||
(merge abcb66c614 ar/typofix later to maint).
|
||||
(merge 9853830787 ah/graph-typofix later to maint).
|
||||
(merge aac578492d ab/config-hooks-path-testfix later to maint).
|
||||
(merge 98c7656a18 ar/more-typofix later to maint).
|
||||
(merge 6fb9195f6c jk/doc-max-pack-size later to maint).
|
||||
(merge 4184cbd635 ar/mailinfo-memcmp-to-skip-prefix later to maint).
|
||||
(merge 91d2347033 ar/doc-libera-chat-in-my-first-contrib later to maint).
|
||||
(merge 338abb0f04 ab/cmd-foo-should-return later to maint).
|
||||
(merge 546096a5cb ab/xdiff-bug-cleanup later to maint).
|
||||
(merge b7b793d1e7 ab/progress-cleanup later to maint).
|
||||
(merge d94f9b8e90 ba/object-info later to maint).
|
||||
(merge 52ff891c03 ar/test-code-cleanup later to maint).
|
||||
(merge a0538e5c8b dd/document-log-decorate-default later to maint).
|
||||
(merge ce24797d38 mr/cmake later to maint).
|
||||
(merge 9eb542f2ee ab/pre-auto-gc-hook-test later to maint).
|
||||
(merge 9fffc38583 bk/doc-commit-typofix later to maint).
|
||||
(merge 1cf823d8f0 ks/submodule-cleanup later to maint).
|
||||
(merge ebbf5d2b70 js/config-mak-windows-pcre-fix later to maint).
|
||||
(merge 617480d75b hn/refs-iterator-peel-returns-boolean later to maint).
|
||||
(merge 6a24cc71ed ar/submodule-helper-include-cleanup later to maint).
|
||||
(merge 5632e838f8 rs/khash-alloc-cleanup later to maint).
|
||||
(merge b1d87fbaf1 jk/typofix later to maint).
|
||||
(merge e04170697a ab/gitignore-discovery-doc later to maint).
|
||||
(merge 8232a0ff48 dl/packet-read-response-end-fix later to maint).
|
||||
(merge eb448631fb dl/diff-merge-base later to maint).
|
||||
(merge c510928a25 hn/refs-debug-empty-prefix later to maint).
|
||||
(merge ddcb189d9d tb/bitmap-type-filter-comment-fix later to maint).
|
||||
(merge 878b399734 pb/submodule-recurse-doc later to maint).
|
||||
(merge 734283855f jk/config-env-doc later to maint).
|
||||
(merge 482e1488a9 ab/getcwd-test later to maint).
|
||||
(merge f0b922473e ar/doc-markup-fix later to maint).
|
138
Documentation/RelNotes/2.33.1.txt
Normal file
138
Documentation/RelNotes/2.33.1.txt
Normal file
@ -0,0 +1,138 @@
|
||||
Git 2.33.1 Release Notes
|
||||
========================
|
||||
|
||||
This primarily is to backport various fixes accumulated during the
|
||||
development towards Git 2.34, the next feature release.
|
||||
|
||||
|
||||
Fixes since v2.33
|
||||
-----------------
|
||||
|
||||
* The unicode character width table (used for output alignment) has
|
||||
been updated.
|
||||
|
||||
* Input validation of "git pack-objects --stdin-packs" has been
|
||||
corrected.
|
||||
|
||||
* Bugfix for common ancestor negotiation recently introduced in "git
|
||||
push" codepath.
|
||||
|
||||
* "git pull" had various corner cases that were not well thought out
|
||||
around its --rebase backend, e.g. "git pull --ff-only" did not stop
|
||||
but went ahead and rebased when the history on other side is not a
|
||||
descendant of our history. The series tries to fix them up.
|
||||
|
||||
* "git apply" miscounted the bytes and failed to read to the end of
|
||||
binary hunks.
|
||||
|
||||
* "git range-diff" code clean-up.
|
||||
|
||||
* "git commit --fixup" now works with "--edit" again, after it was
|
||||
broken in v2.32.
|
||||
|
||||
* Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the
|
||||
new version has a blocker bug for that architecture.
|
||||
|
||||
* Checking out all the paths from HEAD during the last conflicted
|
||||
step in "git rebase" and continuing would cause the step to be
|
||||
skipped (which is expected), but leaves MERGE_MSG file behind in
|
||||
$GIT_DIR and confuses the next "git commit", which has been
|
||||
corrected.
|
||||
|
||||
* Various bugs in "git rebase -r" have been fixed.
|
||||
|
||||
* mmap() imitation used to call xmalloc() that dies upon malloc()
|
||||
failure, which has been corrected to just return an error to the
|
||||
caller to be handled.
|
||||
|
||||
* "git diff --relative" segfaulted and/or produced incorrect result
|
||||
when there are unmerged paths.
|
||||
|
||||
* The delayed checkout code path in "git checkout" etc. were chatty
|
||||
even when --quiet and/or --no-progress options were given.
|
||||
|
||||
* "git branch -D <branch>" used to refuse to remove a broken branch
|
||||
ref that points at a missing commit, which has been corrected.
|
||||
|
||||
* Build update for Apple clang.
|
||||
|
||||
* The parser for the "--nl" option of "git column" has been
|
||||
corrected.
|
||||
|
||||
* "git upload-pack" which runs on the other side of "git fetch"
|
||||
forgot to take the ref namespaces into account when handling
|
||||
want-ref requests.
|
||||
|
||||
* The sparse-index support can corrupt the index structure by storing
|
||||
a stale and/or uninitialized data, which has been corrected.
|
||||
|
||||
* Buggy tests could damage repositories outside the throw-away test
|
||||
area we created. We now by default export GIT_CEILING_DIRECTORIES
|
||||
to limit the damage from such a stray test.
|
||||
|
||||
* Even when running "git send-email" without its own threaded
|
||||
discussion support, a threading related header in one message is
|
||||
carried over to the subsequent message to result in an unwanted
|
||||
threading, which has been corrected.
|
||||
|
||||
* The output from "git fast-export", when its anonymization feature
|
||||
is in use, showed an annotated tag incorrectly.
|
||||
|
||||
* Recent "diff -m" changes broke "gitk", which has been corrected.
|
||||
|
||||
* "git maintenance" scheduler fix for macOS.
|
||||
|
||||
* A pathname in an advice message has been made cut-and-paste ready.
|
||||
|
||||
* The "git apply -3" code path learned not to bother the lower level
|
||||
merge machinery when the three-way merge can be trivially resolved
|
||||
without the content level merge.
|
||||
|
||||
* The code that optionally creates the *.rev reverse index file has
|
||||
been optimized to avoid needless computation when it is not writing
|
||||
the file out.
|
||||
|
||||
* "git range-diff -I... <range> <range>" segfaulted, which has been
|
||||
corrected.
|
||||
|
||||
* The order in which various files that make up a single (conceptual)
|
||||
packfile has been reevaluated and straightened up. This matters in
|
||||
correctness, as an incomplete set of files must not be shown to a
|
||||
running Git.
|
||||
|
||||
* The "mode" word is useless in a call to open(2) that does not
|
||||
create a new file. Such a call in the files backend of the ref
|
||||
subsystem has been cleaned up.
|
||||
|
||||
* "git update-ref --stdin" failed to flush its output as needed,
|
||||
which potentially led the conversation to a deadlock.
|
||||
|
||||
* When "git am --abort" fails to abort correctly, it still exited
|
||||
with exit status of 0, which has been corrected.
|
||||
|
||||
* Correct nr and alloc members of strvec struct to be of type size_t.
|
||||
|
||||
* "git stash", where the tentative change involves changing a
|
||||
directory to a file (or vice versa), was confused, which has been
|
||||
corrected.
|
||||
|
||||
* "git clone" from a repository whose HEAD is unborn into a bare
|
||||
repository didn't follow the branch name the other side used, which
|
||||
is corrected.
|
||||
|
||||
* "git cvsserver" had a long-standing bug in its authentication code,
|
||||
which has finally been corrected (it is unclear and is a separate
|
||||
question if anybody is seriously using it, though).
|
||||
|
||||
* "git difftool --dir-diff" mishandled symbolic links.
|
||||
|
||||
* Sensitive data in the HTTP trace were supposed to be redacted, but
|
||||
we failed to do so in HTTP/2 requests.
|
||||
|
||||
* "make clean" has been updated to remove leftover .depend/
|
||||
directories, even when it is not told to use them to compute header
|
||||
dependencies.
|
||||
|
||||
* Protocol v0 clients can get stuck parsing a malformed feature line.
|
||||
|
||||
Also contains various documentation updates and code clean-ups.
|
@ -377,7 +377,7 @@ notes for details).
|
||||
on that order.
|
||||
|
||||
* "git show 'HEAD:Foo[BAR]Baz'" did not interpret the argument as a
|
||||
rev, i.e. the object named by the the pathname with wildcard
|
||||
rev, i.e. the object named by the pathname with wildcard
|
||||
characters in a tree object.
|
||||
(merge aac4fac nd/dwim-wildcards-as-pathspecs later to maint).
|
||||
|
||||
|
@ -74,10 +74,9 @@ the feature triggers the new behavior when it should, and to show the
|
||||
feature does not trigger when it shouldn't. After any code change, make
|
||||
sure that the entire test suite passes.
|
||||
|
||||
If you have an account at GitHub (and you can get one for free to work
|
||||
on open source projects), you can use their Travis CI integration to
|
||||
test your changes on Linux, Mac (and hopefully soon Windows). See
|
||||
GitHub-Travis CI hints section for details.
|
||||
Pushing to a fork of https://github.com/git/git will use their CI
|
||||
integration to test your changes on Linux, Mac and Windows. See the
|
||||
<<GHCI,GitHub CI>> section for details.
|
||||
|
||||
Do not forget to update the documentation to describe the updated
|
||||
behavior and make sure that the resulting documentation set formats
|
||||
@ -117,10 +116,13 @@ If in doubt which identifier to use, run `git log --no-merges` on the
|
||||
files you are modifying to see the current conventions.
|
||||
|
||||
[[summary-section]]
|
||||
It's customary to start the remainder of the first line after "area: "
|
||||
with a lower-case letter. E.g. "doc: clarify...", not "doc:
|
||||
Clarify...", or "githooks.txt: improve...", not "githooks.txt:
|
||||
Improve...".
|
||||
The title sentence after the "area:" prefix omits the full stop at the
|
||||
end, and its first word is not capitalized unless there is a reason to
|
||||
capitalize it other than because it is the first word in the sentence.
|
||||
E.g. "doc: clarify...", not "doc: Clarify...", or "githooks.txt:
|
||||
improve...", not "githooks.txt: Improve...". But "refs: HEAD is also
|
||||
treated as a ref" is correct, as we spell `HEAD` in all caps even when
|
||||
it appears in the middle of a sentence.
|
||||
|
||||
[[meaningful-message]]
|
||||
The body should provide a meaningful commit message, which:
|
||||
@ -164,6 +166,85 @@ or, on an older version of Git without support for --pretty=reference:
|
||||
git show -s --date=short --pretty='format:%h (%s, %ad)' <commit>
|
||||
....
|
||||
|
||||
[[sign-off]]
|
||||
=== Certify your work by adding your `Signed-off-by` trailer
|
||||
|
||||
To improve tracking of who did what, we ask you to certify that you
|
||||
wrote the patch or have the right to pass it on under the same license
|
||||
as ours, by "signing off" your patch. Without sign-off, we cannot
|
||||
accept your patches.
|
||||
|
||||
If (and only if) you certify the below D-C-O:
|
||||
|
||||
[[dco]]
|
||||
.Developer's Certificate of Origin 1.1
|
||||
____
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
a. The contribution was created in whole or in part by me and I
|
||||
have the right to submit it under the open source license
|
||||
indicated in the file; or
|
||||
|
||||
b. The contribution is based upon previous work that, to the best
|
||||
of my knowledge, is covered under an appropriate open source
|
||||
license and I have the right under that license to submit that
|
||||
work with modifications, whether created in whole or in part
|
||||
by me, under the same open source license (unless I am
|
||||
permitted to submit under a different license), as indicated
|
||||
in the file; or
|
||||
|
||||
c. The contribution was provided directly to me by some other
|
||||
person who certified (a), (b) or (c) and I have not modified
|
||||
it.
|
||||
|
||||
d. I understand and agree that this project and the contribution
|
||||
are public and that a record of the contribution (including all
|
||||
personal information I submit with it, including my sign-off) is
|
||||
maintained indefinitely and may be redistributed consistent with
|
||||
this project or the open source license(s) involved.
|
||||
____
|
||||
|
||||
you add a "Signed-off-by" trailer to your commit, that looks like
|
||||
this:
|
||||
|
||||
....
|
||||
Signed-off-by: Random J Developer <random@developer.example.org>
|
||||
....
|
||||
|
||||
This line can be added by Git if you run the git-commit command with
|
||||
the -s option.
|
||||
|
||||
Notice that you can place your own `Signed-off-by` trailer when
|
||||
forwarding somebody else's patch with the above rules for
|
||||
D-C-O. Indeed you are encouraged to do so. Do not forget to
|
||||
place an in-body "From: " line at the beginning to properly attribute
|
||||
the change to its true author (see (2) above).
|
||||
|
||||
This procedure originally came from the Linux kernel project, so our
|
||||
rule is quite similar to theirs, but what exactly it means to sign-off
|
||||
your patch differs from project to project, so it may be different
|
||||
from that of the project you are accustomed to.
|
||||
|
||||
[[real-name]]
|
||||
Also notice that a real name is used in the `Signed-off-by` trailer. Please
|
||||
don't hide your real name.
|
||||
|
||||
[[commit-trailers]]
|
||||
If you like, you can put extra tags at the end:
|
||||
|
||||
. `Reported-by:` is used to credit someone who found the bug that
|
||||
the patch attempts to fix.
|
||||
. `Acked-by:` says that the person who is more familiar with the area
|
||||
the patch attempts to modify liked the patch.
|
||||
. `Reviewed-by:`, unlike the other tags, can only be offered by the
|
||||
reviewers themselves when they are completely satisfied with the
|
||||
patch after a detailed analysis.
|
||||
. `Tested-by:` is used to indicate that the person applied the patch
|
||||
and found it to have the desired effect.
|
||||
|
||||
You can also create your own tag or use one that's in common usage
|
||||
such as "Thanks-to:", "Based-on-patch-by:", or "Mentored-by:".
|
||||
|
||||
[[git-tools]]
|
||||
=== Generate your patch using Git tools out of your commits.
|
||||
|
||||
@ -299,86 +380,6 @@ Do not forget to add trailers such as `Acked-by:`, `Reviewed-by:` and
|
||||
`Tested-by:` lines as necessary to credit people who helped your
|
||||
patch, and "cc:" them when sending such a final version for inclusion.
|
||||
|
||||
[[sign-off]]
|
||||
=== Certify your work by adding your `Signed-off-by` trailer
|
||||
|
||||
To improve tracking of who did what, we ask you to certify that you
|
||||
wrote the patch or have the right to pass it on under the same license
|
||||
as ours, by "signing off" your patch. Without sign-off, we cannot
|
||||
accept your patches.
|
||||
|
||||
If you can certify the below D-C-O:
|
||||
|
||||
[[dco]]
|
||||
.Developer's Certificate of Origin 1.1
|
||||
____
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
a. The contribution was created in whole or in part by me and I
|
||||
have the right to submit it under the open source license
|
||||
indicated in the file; or
|
||||
|
||||
b. The contribution is based upon previous work that, to the best
|
||||
of my knowledge, is covered under an appropriate open source
|
||||
license and I have the right under that license to submit that
|
||||
work with modifications, whether created in whole or in part
|
||||
by me, under the same open source license (unless I am
|
||||
permitted to submit under a different license), as indicated
|
||||
in the file; or
|
||||
|
||||
c. The contribution was provided directly to me by some other
|
||||
person who certified (a), (b) or (c) and I have not modified
|
||||
it.
|
||||
|
||||
d. I understand and agree that this project and the contribution
|
||||
are public and that a record of the contribution (including all
|
||||
personal information I submit with it, including my sign-off) is
|
||||
maintained indefinitely and may be redistributed consistent with
|
||||
this project or the open source license(s) involved.
|
||||
____
|
||||
|
||||
you add a "Signed-off-by" trailer to your commit, that looks like
|
||||
this:
|
||||
|
||||
....
|
||||
Signed-off-by: Random J Developer <random@developer.example.org>
|
||||
....
|
||||
|
||||
This line can be added by Git if you run the git-commit command with
|
||||
the -s option.
|
||||
|
||||
Notice that you can place your own `Signed-off-by` trailer when
|
||||
forwarding somebody else's patch with the above rules for
|
||||
D-C-O. Indeed you are encouraged to do so. Do not forget to
|
||||
place an in-body "From: " line at the beginning to properly attribute
|
||||
the change to its true author (see (2) above).
|
||||
|
||||
This procedure originally came from the Linux kernel project, so our
|
||||
rule is quite similar to theirs, but what exactly it means to sign-off
|
||||
your patch differs from project to project, so it may be different
|
||||
from that of the project you are accustomed to.
|
||||
|
||||
[[real-name]]
|
||||
Also notice that a real name is used in the `Signed-off-by` trailer. Please
|
||||
don't hide your real name.
|
||||
|
||||
[[commit-trailers]]
|
||||
If you like, you can put extra tags at the end:
|
||||
|
||||
. `Reported-by:` is used to credit someone who found the bug that
|
||||
the patch attempts to fix.
|
||||
. `Acked-by:` says that the person who is more familiar with the area
|
||||
the patch attempts to modify liked the patch.
|
||||
. `Reviewed-by:`, unlike the other tags, can only be offered by the
|
||||
reviewer and means that she is completely satisfied that the patch
|
||||
is ready for application. It is usually offered only after a
|
||||
detailed review.
|
||||
. `Tested-by:` is used to indicate that the person applied the patch
|
||||
and found it to have the desired effect.
|
||||
|
||||
You can also create your own tag or use one that's in common usage
|
||||
such as "Thanks-to:", "Based-on-patch-by:", or "Mentored-by:".
|
||||
|
||||
== Subsystems with dedicated maintainers
|
||||
|
||||
Some parts of the system have dedicated maintainers with their own
|
||||
@ -447,13 +448,12 @@ their trees themselves.
|
||||
entitled "What's cooking in git.git" and "What's in git.git" giving
|
||||
the status of various proposed changes.
|
||||
|
||||
[[travis]]
|
||||
== GitHub-Travis CI hints
|
||||
== GitHub CI[[GHCI]]]
|
||||
|
||||
With an account at GitHub (you can get one for free to work on open
|
||||
source projects), you can use Travis CI to test your changes on Linux,
|
||||
Mac (and hopefully soon Windows). You can find a successful example
|
||||
test build here: https://travis-ci.org/git/git/builds/120473209
|
||||
With an account at GitHub, you can use GitHub CI to test your changes
|
||||
on Linux, Mac and Windows. See
|
||||
https://github.com/git/git/actions/workflows/main.yml for examples of
|
||||
recent CI runs.
|
||||
|
||||
Follow these steps for the initial setup:
|
||||
|
||||
@ -461,31 +461,18 @@ Follow these steps for the initial setup:
|
||||
You can find detailed instructions how to fork here:
|
||||
https://help.github.com/articles/fork-a-repo/
|
||||
|
||||
. Open the Travis CI website: https://travis-ci.org
|
||||
|
||||
. Press the "Sign in with GitHub" button.
|
||||
|
||||
. Grant Travis CI permissions to access your GitHub account.
|
||||
You can find more information about the required permissions here:
|
||||
https://docs.travis-ci.com/user/github-oauth-scopes
|
||||
|
||||
. Open your Travis CI profile page: https://travis-ci.org/profile
|
||||
|
||||
. Enable Travis CI builds for your Git fork.
|
||||
|
||||
After the initial setup, Travis CI will run whenever you push new changes
|
||||
After the initial setup, CI will run whenever you push new changes
|
||||
to your fork of Git on GitHub. You can monitor the test state of all your
|
||||
branches here: https://travis-ci.org/__<Your GitHub handle>__/git/branches
|
||||
branches here: https://github.com/<Your GitHub handle>/git/actions/workflows/main.yml
|
||||
|
||||
If a branch did not pass all test cases then it is marked with a red
|
||||
cross. In that case you can click on the failing Travis CI job and
|
||||
scroll all the way down in the log. Find the line "<-- Click here to see
|
||||
detailed test output!" and click on the triangle next to the log line
|
||||
number to expand the detailed test output. Here is such a failing
|
||||
example: https://travis-ci.org/git/git/jobs/122676187
|
||||
cross. In that case you can click on the failing job and navigate to
|
||||
"ci/run-build-and-tests.sh" and/or "ci/print-test-failures.sh". You
|
||||
can also download "Artifacts" which are tarred (or zipped) archives
|
||||
with test data relevant for debugging.
|
||||
|
||||
Fix the problem and push your fix to your Git fork. This will trigger
|
||||
a new Travis CI build to ensure all tests pass.
|
||||
Then fix the problem and push your fix to your GitHub fork. This will
|
||||
trigger a new CI build to ensure all tests pass.
|
||||
|
||||
[[mua]]
|
||||
== MUA specific hints
|
||||
|
@ -1,6 +1,6 @@
|
||||
-b::
|
||||
Show blank SHA-1 for boundary commits. This can also
|
||||
be controlled via the `blame.blankboundary` config option.
|
||||
be controlled via the `blame.blankBoundary` config option.
|
||||
|
||||
--root::
|
||||
Do not treat root commits as boundaries. This can also be
|
||||
|
@ -46,7 +46,7 @@ Subsection names are case sensitive and can contain any characters except
|
||||
newline and the null byte. Doublequote `"` and backslash can be included
|
||||
by escaping them as `\"` and `\\`, respectively. Backslashes preceding
|
||||
other characters are dropped when reading; for example, `\t` is read as
|
||||
`t` and `\0` is read as `0` Section headers cannot span multiple lines.
|
||||
`t` and `\0` is read as `0`. Section headers cannot span multiple lines.
|
||||
Variables may belong directly to a section or to a given subsection. You
|
||||
can have `[section]` if you have `[section "subsection"]`, but you don't
|
||||
need to.
|
||||
@ -398,6 +398,8 @@ include::config/interactive.txt[]
|
||||
|
||||
include::config/log.txt[]
|
||||
|
||||
include::config/lsrefs.txt[]
|
||||
|
||||
include::config/mailinfo.txt[]
|
||||
|
||||
include::config/mailmap.txt[]
|
||||
|
@ -119,4 +119,8 @@ advice.*::
|
||||
addEmptyPathspec::
|
||||
Advice shown if a user runs the add command without providing
|
||||
the pathspec parameter.
|
||||
updateSparsePath::
|
||||
Advice shown when either linkgit:git-add[1] or linkgit:git-rm[1]
|
||||
is asked to update index entries outside the current sparse
|
||||
checkout.
|
||||
--
|
||||
|
@ -27,7 +27,7 @@ blame.ignoreRevsFile::
|
||||
file names will reset the list of ignored revisions. This option will
|
||||
be handled before the command line option `--ignore-revs-file`.
|
||||
|
||||
blame.markUnblamables::
|
||||
blame.markUnblamableLines::
|
||||
Mark lines that were changed by an ignored revision that we could not
|
||||
attribute to another commit with a '*' in the output of
|
||||
linkgit:git-blame[1].
|
||||
|
@ -21,3 +21,24 @@ checkout.guess::
|
||||
Provides the default value for the `--guess` or `--no-guess`
|
||||
option in `git checkout` and `git switch`. See
|
||||
linkgit:git-switch[1] and linkgit:git-checkout[1].
|
||||
|
||||
checkout.workers::
|
||||
The number of parallel workers to use when updating the working tree.
|
||||
The default is one, i.e. sequential execution. If set to a value less
|
||||
than one, Git will use as many workers as the number of logical cores
|
||||
available. This setting and `checkout.thresholdForParallelism` affect
|
||||
all commands that perform checkout. E.g. checkout, clone, reset,
|
||||
sparse-checkout, etc.
|
||||
+
|
||||
Note: parallel checkout usually delivers better performance for repositories
|
||||
located on SSDs or over NFS. For repositories on spinning disks and/or machines
|
||||
with a small number of cores, the default sequential checkout often performs
|
||||
better. The size and compression level of a repository might also influence how
|
||||
well the parallel version performs.
|
||||
|
||||
checkout.thresholdForParallelism::
|
||||
When running parallel checkout with a small number of files, the cost
|
||||
of subprocess spawning and inter-process communication might outweigh
|
||||
the parallelization gains. This setting allows to define the minimum
|
||||
number of files for which parallel checkout should be attempted. The
|
||||
default is 100.
|
||||
|
@ -2,3 +2,7 @@ clone.defaultRemoteName::
|
||||
The name of the remote to create when cloning a repository. Defaults to
|
||||
`origin`, and can be overridden by passing the `--origin` command-line
|
||||
option to linkgit:git-clone[1].
|
||||
|
||||
clone.rejectShallow::
|
||||
Reject to clone a repository if it is a shallow one, can be overridden by
|
||||
passing option `--reject-shallow` in command line. See linkgit:git-clone[1]
|
||||
|
@ -127,8 +127,9 @@ color.interactive.<slot>::
|
||||
interactive commands.
|
||||
|
||||
color.pager::
|
||||
A boolean to enable/disable colored output when the pager is in
|
||||
use (default is true).
|
||||
A boolean to specify whether `auto` color modes should colorize
|
||||
output going to the pager. Defaults to true; set this to false
|
||||
if your pager does not understand ANSI color codes.
|
||||
|
||||
color.push::
|
||||
A boolean to enable/disable color in push errors. May be set to
|
||||
|
@ -1,3 +1,9 @@
|
||||
commitGraph.generationVersion::
|
||||
Specifies the type of generation number version to use when writing
|
||||
or reading the commit-graph file. If version 1 is specified, then
|
||||
the corrected commit dates will not be written or read. Defaults to
|
||||
2.
|
||||
|
||||
commitGraph.maxNewFilters::
|
||||
Specifies the default value for the `--max-new-filters` option of `git
|
||||
commit-graph write` (c.f., linkgit:git-commit-graph[1]).
|
||||
|
@ -625,4 +625,6 @@ core.abbrev::
|
||||
computed based on the approximate number of packed objects
|
||||
in your repository, which hopefully is enough for
|
||||
abbreviated object names to stay unique for some time.
|
||||
If set to "no", no abbreviation is made and the object names
|
||||
are shown in their full length.
|
||||
The minimum length is 4.
|
||||
|
@ -85,6 +85,8 @@ diff.ignoreSubmodules::
|
||||
and 'git status' when `status.submoduleSummary` is set unless it is
|
||||
overridden by using the --ignore-submodules command-line option.
|
||||
The 'git submodule' commands are not affected by this setting.
|
||||
By default this is set to untracked so that any untracked
|
||||
submodules are ignored.
|
||||
|
||||
diff.mnemonicPrefix::
|
||||
If set, 'git diff' uses a prefix pair that is different from the
|
||||
@ -116,9 +118,10 @@ diff.orderFile::
|
||||
relative to the top of the working tree.
|
||||
|
||||
diff.renameLimit::
|
||||
The number of files to consider when performing the copy/rename
|
||||
detection; equivalent to the 'git diff' option `-l`. This setting
|
||||
has no effect if rename detection is turned off.
|
||||
The number of files to consider in the exhaustive portion of
|
||||
copy/rename detection; equivalent to the 'git diff' option
|
||||
`-l`. If not set, the default value is currently 1000. This
|
||||
setting has no effect if rename detection is turned off.
|
||||
|
||||
diff.renames::
|
||||
Whether and how Git detects renames. If set to "false",
|
||||
|
@ -69,7 +69,8 @@ fetch.negotiationAlgorithm::
|
||||
setting defaults to "skipping".
|
||||
Unknown values will cause 'git fetch' to error out.
|
||||
+
|
||||
See also the `--negotiation-tip` option for linkgit:git-fetch[1].
|
||||
See also the `--negotiate-only` and `--negotiation-tip` options to
|
||||
linkgit:git-fetch[1].
|
||||
|
||||
fetch.showForcedUpdates::
|
||||
Set to false to enable `--no-show-forced-updates` in
|
||||
|
@ -11,7 +11,7 @@ gui.displayUntracked::
|
||||
in the file list. The default is "true".
|
||||
|
||||
gui.encoding::
|
||||
Specifies the default encoding to use for displaying of
|
||||
Specifies the default character encoding to use for displaying of
|
||||
file contents in linkgit:git-gui[1] and linkgit:gitk[1].
|
||||
It can be overridden by setting the 'encoding' attribute
|
||||
for relevant files (see linkgit:gitattributes[5]).
|
||||
|
@ -42,12 +42,12 @@ http.proxySSLKey::
|
||||
http.proxySSLCertPasswordProtected::
|
||||
Enable Git's password prompt for the proxy SSL certificate. Otherwise OpenSSL
|
||||
will prompt the user, possibly many times, if the certificate or private key
|
||||
is encrypted. Can be overriden by the `GIT_PROXY_SSL_CERT_PASSWORD_PROTECTED`
|
||||
is encrypted. Can be overridden by the `GIT_PROXY_SSL_CERT_PASSWORD_PROTECTED`
|
||||
environment variable.
|
||||
|
||||
http.proxySSLCAInfo::
|
||||
Pathname to the file containing the certificate bundle that should be used to
|
||||
verify the proxy with when using an HTTPS proxy. Can be overriden by the
|
||||
verify the proxy with when using an HTTPS proxy. Can be overridden by the
|
||||
`GIT_PROXY_SSL_CAINFO` environment variable.
|
||||
|
||||
http.emptyAuth::
|
||||
|
@ -14,6 +14,11 @@ index.recordOffsetTable::
|
||||
Defaults to 'true' if index.threads has been explicitly enabled,
|
||||
'false' otherwise.
|
||||
|
||||
index.sparse::
|
||||
When enabled, write the index using sparse-directory entries. This
|
||||
has no effect unless `core.sparseCheckout` and
|
||||
`core.sparseCheckoutCone` are both enabled. Defaults to 'false'.
|
||||
|
||||
index.threads::
|
||||
Specifies the number of threads to spawn when loading the index.
|
||||
This is meant to reduce index load time on multiprocessor machines.
|
||||
|
@ -4,4 +4,4 @@ init.templateDir::
|
||||
|
||||
init.defaultBranch::
|
||||
Allows overriding the default branch name e.g. when initializing
|
||||
a new repository or when cloning an empty repository.
|
||||
a new repository.
|
||||
|
@ -24,6 +24,11 @@ log.excludeDecoration::
|
||||
the config option can be overridden by the `--decorate-refs`
|
||||
option.
|
||||
|
||||
log.diffMerges::
|
||||
Set default diff format to be used for merge commits. See
|
||||
`--diff-merges` in linkgit:git-log[1] for details.
|
||||
Defaults to `separate`.
|
||||
|
||||
log.follow::
|
||||
If `true`, `git log` will act as if the `--follow` option was used when
|
||||
a single <path> is given. This has the same limitations as `--follow`,
|
||||
|
9
Documentation/config/lsrefs.txt
Normal file
9
Documentation/config/lsrefs.txt
Normal file
@ -0,0 +1,9 @@
|
||||
lsrefs.unborn::
|
||||
May be "advertise" (the default), "allow", or "ignore". If "advertise",
|
||||
the server will respond to the client sending "unborn" (as described in
|
||||
protocol-v2.txt) and will advertise support for this feature during the
|
||||
protocol v2 capability advertisement. "allow" is the same as
|
||||
"advertise" except that the server will not advertise support for this
|
||||
feature; this is useful for load-balanced servers that cannot be
|
||||
updated atomically (for example), since the administrator could
|
||||
configure "allow", then after a delay, configure "advertise".
|
@ -15,8 +15,9 @@ maintenance.strategy::
|
||||
* `none`: This default setting implies no task are run at any schedule.
|
||||
* `incremental`: This setting optimizes for performing small maintenance
|
||||
activities that do not delete any data. This does not schedule the `gc`
|
||||
task, but runs the `prefetch` and `commit-graph` tasks hourly and the
|
||||
`loose-objects` and `incremental-repack` tasks daily.
|
||||
task, but runs the `prefetch` and `commit-graph` tasks hourly, the
|
||||
`loose-objects` and `incremental-repack` tasks daily, and the `pack-refs`
|
||||
task weekly.
|
||||
|
||||
maintenance.<task>.enabled::
|
||||
This boolean config option controls whether the maintenance task
|
||||
|
@ -14,7 +14,7 @@ merge.defaultToUpstream::
|
||||
branches at the remote named by `branch.<current branch>.remote`
|
||||
are consulted, and then they are mapped via `remote.<remote>.fetch`
|
||||
to their corresponding remote-tracking branches, and the tips of
|
||||
these tracking branches are merged.
|
||||
these tracking branches are merged. Defaults to true.
|
||||
|
||||
merge.ff::
|
||||
By default, Git does not create an extra merge commit when merging
|
||||
@ -33,10 +33,12 @@ merge.verifySignatures::
|
||||
include::fmt-merge-msg.txt[]
|
||||
|
||||
merge.renameLimit::
|
||||
The number of files to consider when performing rename detection
|
||||
during a merge; if not specified, defaults to the value of
|
||||
diff.renameLimit. This setting has no effect if rename detection
|
||||
is turned off.
|
||||
The number of files to consider in the exhaustive portion of
|
||||
rename detection during a merge. If not specified, defaults
|
||||
to the value of diff.renameLimit. If neither
|
||||
merge.renameLimit nor diff.renameLimit are specified,
|
||||
currently defaults to 7000. This setting has no effect if
|
||||
rename detection is turned off.
|
||||
|
||||
merge.renames::
|
||||
Whether Git detects renames. If set to "false", rename detection
|
||||
|
@ -13,6 +13,11 @@ mergetool.<tool>.cmd::
|
||||
merged; 'MERGED' contains the name of the file to which the merge
|
||||
tool should write the results of a successful merge.
|
||||
|
||||
mergetool.<tool>.hideResolved::
|
||||
Allows the user to override the global `mergetool.hideResolved` value
|
||||
for a specific tool. See `mergetool.hideResolved` for the full
|
||||
description.
|
||||
|
||||
mergetool.<tool>.trustExitCode::
|
||||
For a custom merge command, specify whether the exit code of
|
||||
the merge command can be used to determine whether the merge was
|
||||
@ -40,6 +45,16 @@ mergetool.meld.useAutoMerge::
|
||||
value of `false` avoids using `--auto-merge` altogether, and is the
|
||||
default value.
|
||||
|
||||
mergetool.hideResolved::
|
||||
During a merge Git will automatically resolve as many conflicts as
|
||||
possible and write the 'MERGED' file containing conflict markers around
|
||||
any conflicts that it cannot resolve; 'LOCAL' and 'REMOTE' normally
|
||||
represent the versions of the file from before Git's conflict
|
||||
resolution. This flag causes 'LOCAL' and 'REMOTE' to be overwriten so
|
||||
that only the unresolved conflicts are presented to the merge tool. Can
|
||||
be configured per-tool via the `mergetool.<tool>.hideResolved`
|
||||
configuration variable. Defaults to `false`.
|
||||
|
||||
mergetool.keepBackup::
|
||||
After performing a merge, the original file with conflict markers
|
||||
can be saved as a file with a `.orig` extension. If this variable
|
||||
|
@ -99,12 +99,23 @@ pack.packSizeLimit::
|
||||
packing to a file when repacking, i.e. the git:// protocol
|
||||
is unaffected. It can be overridden by the `--max-pack-size`
|
||||
option of linkgit:git-repack[1]. Reaching this limit results
|
||||
in the creation of multiple packfiles; which in turn prevents
|
||||
bitmaps from being created.
|
||||
The minimum size allowed is limited to 1 MiB.
|
||||
The default is unlimited.
|
||||
Common unit suffixes of 'k', 'm', or 'g' are
|
||||
supported.
|
||||
in the creation of multiple packfiles.
|
||||
+
|
||||
Note that this option is rarely useful, and may result in a larger total
|
||||
on-disk size (because Git will not store deltas between packs), as well
|
||||
as worse runtime performance (object lookup within multiple packs is
|
||||
slower than a single pack, and optimizations like reachability bitmaps
|
||||
cannot cope with multiple packs).
|
||||
+
|
||||
If you need to actively run Git using smaller packfiles (e.g., because your
|
||||
filesystem does not support large files), this option may help. But if
|
||||
your goal is to transmit a packfile over a medium that supports limited
|
||||
sizes (e.g., removable media that cannot store the whole repository),
|
||||
you are likely better off creating a single large packfile and splitting
|
||||
it using a generic multi-volume archive tool (e.g., Unix `split`).
|
||||
+
|
||||
The minimum size allowed is limited to 1 MiB. The default is unlimited.
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
pack.useBitmaps::
|
||||
When true, git will use pack bitmaps (if available) when packing
|
||||
@ -122,6 +133,21 @@ pack.useSparse::
|
||||
commits contain certain types of direct renames. Default is
|
||||
`true`.
|
||||
|
||||
pack.preferBitmapTips::
|
||||
When selecting which commits will receive bitmaps, prefer a
|
||||
commit at the tip of any reference that is a suffix of any value
|
||||
of this configuration over any other commits in the "selection
|
||||
window".
|
||||
+
|
||||
Note that setting this configuration to `refs/foo` does not mean that
|
||||
the commits at the tips of `refs/foo/bar` and `refs/foo/baz` will
|
||||
necessarily be selected. This is because commits are selected for
|
||||
bitmaps from within a series of windows of variable length.
|
||||
+
|
||||
If a commit at the tip of any reference which is a suffix of any value
|
||||
of this configuration is seen in a window, it is immediately given
|
||||
preference over any other commit in that window.
|
||||
|
||||
pack.writeBitmaps (deprecated)::
|
||||
This is a deprecated synonym for `repack.writeBitmaps`.
|
||||
|
||||
@ -133,3 +159,10 @@ pack.writeBitmapHashCache::
|
||||
between an older, bitmapped pack and objects that have been
|
||||
pushed since the last gc). The downside is that it consumes 4
|
||||
bytes per object of disk space. Defaults to true.
|
||||
|
||||
pack.writeReverseIndex::
|
||||
When true, git will write a corresponding .rev file (see:
|
||||
link:../technical/pack-format.html[Documentation/technical/pack-format.txt])
|
||||
for each new packfile that it writes in all places except for
|
||||
linkgit:git-fast-import[1] and in the bulk checkin mechanism.
|
||||
Defaults to false.
|
||||
|
@ -24,15 +24,14 @@ push.default::
|
||||
|
||||
* `tracking` - This is a deprecated synonym for `upstream`.
|
||||
|
||||
* `simple` - in centralized workflow, work like `upstream` with an
|
||||
added safety to refuse to push if the upstream branch's name is
|
||||
different from the local one.
|
||||
* `simple` - pushes the current branch with the same name on the remote.
|
||||
+
|
||||
When pushing to a remote that is different from the remote you normally
|
||||
pull from, work as `current`. This is the safest option and is suited
|
||||
for beginners.
|
||||
If you are working on a centralized workflow (pushing to the same repository you
|
||||
pull from, which is typically `origin`), then you need to configure an upstream
|
||||
branch with the same name.
|
||||
+
|
||||
This mode has become the default in Git 2.0.
|
||||
This mode is the default since Git 2.0, and is the safest option suited for
|
||||
beginners.
|
||||
|
||||
* `matching` - push all branches having the same name on both ends.
|
||||
This makes the repository you are pushing to remember the set of
|
||||
@ -120,3 +119,10 @@ push.useForceIfIncludes::
|
||||
`--force-if-includes` as an option to linkgit:git-push[1]
|
||||
in the command line. Adding `--no-force-if-includes` at the
|
||||
time of push overrides this configuration setting.
|
||||
|
||||
push.negotiate::
|
||||
If set to "true", attempt to reduce the size of the packfile
|
||||
sent by rounds of negotiation in which the client and the
|
||||
server attempt to find commits in common. If "false", Git will
|
||||
rely solely on the server's ref advertisement to find commits
|
||||
in common.
|
||||
|
@ -1,10 +1,3 @@
|
||||
rebase.useBuiltin::
|
||||
Unused configuration variable. Used in Git versions 2.20 and
|
||||
2.21 as an escape hatch to enable the legacy shellscript
|
||||
implementation of rebase. Now the built-in rewrite of it in C
|
||||
is always used. Setting this will emit a warning, to alert any
|
||||
remaining users that setting this now does nothing.
|
||||
|
||||
rebase.backend::
|
||||
Default backend to use for rebasing. Possible choices are
|
||||
'apply' or 'merge'. In the future, if the merge backend gains
|
||||
@ -68,3 +61,6 @@ rebase.rescheduleFailedExec::
|
||||
Automatically reschedule `exec` commands that failed. This only makes
|
||||
sense in interactive mode (or when an `--exec` option was provided).
|
||||
This is the same as specifying the `--reschedule-failed-exec` option.
|
||||
|
||||
rebase.forkPoint::
|
||||
If set to false set `--no-fork-point` option by default.
|
||||
|
@ -8,9 +8,6 @@ sendemail.smtpEncryption::
|
||||
See linkgit:git-send-email[1] for description. Note that this
|
||||
setting is not subject to the 'identity' mechanism.
|
||||
|
||||
sendemail.smtpssl (deprecated)::
|
||||
Deprecated alias for 'sendemail.smtpEncryption = ssl'.
|
||||
|
||||
sendemail.smtpsslcertpath::
|
||||
Path to ca-certificates (either a directory or a single file).
|
||||
Set it to an empty string to disable certificate verification.
|
||||
|
@ -5,6 +5,11 @@ stash.useBuiltin::
|
||||
is always used. Setting this will emit a warning, to alert any
|
||||
remaining users that setting this now does nothing.
|
||||
|
||||
stash.showIncludeUntracked::
|
||||
If this is set to true, the `git stash show` command will show
|
||||
the untracked files of a stash entry. Defaults to false. See
|
||||
description of 'show' command in linkgit:git-stash[1].
|
||||
|
||||
stash.showPatch::
|
||||
If this is set to true, the `git stash show` command without an
|
||||
option will show the stash entry in patch form. Defaults to false.
|
||||
|
@ -58,8 +58,9 @@ submodule.active::
|
||||
commands. See linkgit:gitsubmodules[7] for details.
|
||||
|
||||
submodule.recurse::
|
||||
Specifies if commands recurse into submodules by default. This
|
||||
applies to all commands that have a `--recurse-submodules` option
|
||||
A boolean indicating if commands should enable the `--recurse-submodules`
|
||||
option by default.
|
||||
Applies to all commands that support this option
|
||||
(`checkout`, `fetch`, `grep`, `pull`, `push`, `read-tree`, `reset`,
|
||||
`restore` and `switch`) except `clone` and `ls-files`.
|
||||
Defaults to false.
|
||||
|
@ -54,7 +54,7 @@ trace2.envVars::
|
||||
`GIT_HTTP_USER_AGENT,GIT_CONFIG` would cause the trace2 output to
|
||||
contain events listing the overrides for HTTP user agent and the
|
||||
location of the Git configuration file (assuming any are set). May be
|
||||
overriden by the `GIT_TRACE2_ENV_VARS` environment variable. Unset by
|
||||
overridden by the `GIT_TRACE2_ENV_VARS` environment variable. Unset by
|
||||
default.
|
||||
|
||||
trace2.destinationDebug::
|
||||
|
@ -52,13 +52,17 @@ If you have multiple hideRefs values, later entries override earlier ones
|
||||
(and entries in more-specific config files override less-specific ones).
|
||||
+
|
||||
If a namespace is in use, the namespace prefix is stripped from each
|
||||
reference before it is matched against `transfer.hiderefs` patterns.
|
||||
reference before it is matched against `transfer.hiderefs` patterns. In
|
||||
order to match refs before stripping, add a `^` in front of the ref name. If
|
||||
you combine `!` and `^`, `!` must be specified first.
|
||||
+
|
||||
For example, if `refs/heads/master` is specified in `transfer.hideRefs` and
|
||||
the current namespace is `foo`, then `refs/namespaces/foo/refs/heads/master`
|
||||
is omitted from the advertisements but `refs/heads/master` and
|
||||
`refs/namespaces/bar/refs/heads/master` are still advertised as so-called
|
||||
"have" lines. In order to match refs before stripping, add a `^` in front of
|
||||
the ref name. If you combine `!` and `^`, `!` must be specified first.
|
||||
is omitted from the advertisements. If `uploadpack.allowRefInWant` is set,
|
||||
`upload-pack` will treat `want-ref refs/heads/master` in a protocol v2
|
||||
`fetch` command as if `refs/namespaces/foo/refs/heads/master` did not exist.
|
||||
`receive-pack`, on the other hand, will still advertise the object id the
|
||||
ref is pointing to without mentioning its name (a so-called ".have" line).
|
||||
+
|
||||
Even if you hide refs, a client may still be able to steal the target
|
||||
objects via the techniques described in the "SECURITY" section of the
|
||||
|
@ -59,15 +59,16 @@ uploadpack.allowFilter::
|
||||
|
||||
uploadpackfilter.allow::
|
||||
Provides a default value for unspecified object filters (see: the
|
||||
below configuration variable).
|
||||
below configuration variable). If set to `true`, this will also
|
||||
enable all filters which get added in the future.
|
||||
Defaults to `true`.
|
||||
|
||||
uploadpackfilter.<filter>.allow::
|
||||
Explicitly allow or ban the object filter corresponding to
|
||||
`<filter>`, where `<filter>` may be one of: `blob:none`,
|
||||
`blob:limit`, `tree`, `sparse:oid`, or `combine`. If using
|
||||
combined filters, both `combine` and all of the nested filter
|
||||
kinds must be allowed. Defaults to `uploadpackfilter.allow`.
|
||||
`blob:limit`, `object:type`, `tree`, `sparse:oid`, or `combine`.
|
||||
If using combined filters, both `combine` and all of the nested
|
||||
filter kinds must be allowed. Defaults to `uploadpackfilter.allow`.
|
||||
|
||||
uploadpackfilter.tree.maxDepth::
|
||||
Only allow `--filter=tree:<n>` when `<n>` is no more than the value of
|
||||
|
@ -1,10 +1,7 @@
|
||||
DATE FORMATS
|
||||
------------
|
||||
|
||||
The `GIT_AUTHOR_DATE`, `GIT_COMMITTER_DATE` environment variables
|
||||
ifdef::git-commit[]
|
||||
and the `--date` option
|
||||
endif::git-commit[]
|
||||
The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables
|
||||
support the following date formats:
|
||||
|
||||
Git internal format::
|
||||
@ -26,3 +23,9 @@ ISO 8601::
|
||||
+
|
||||
NOTE: In addition, the date part is accepted in the following formats:
|
||||
`YYYY.MM.DD`, `MM/DD/YYYY` and `DD.MM.YYYY`.
|
||||
|
||||
ifdef::git-commit[]
|
||||
In addition to recognizing all date formats above, the `--date` option
|
||||
will also try to make sense of other, more human-centric date formats,
|
||||
such as relative dates like "yesterday" or "last Friday at noon".
|
||||
endif::git-commit[]
|
||||
|
@ -11,7 +11,7 @@ linkgit:git-diff-files[1]
|
||||
with the `-p` option produces patch text.
|
||||
You can customize the creation of patch text via the
|
||||
`GIT_EXTERNAL_DIFF` and the `GIT_DIFF_OPTS` environment variables
|
||||
(see linkgit:git[1]).
|
||||
(see linkgit:git[1]), and the `diff` attribute (see linkgit:gitattributes[5]).
|
||||
|
||||
What the -p option produces is slightly different from the traditional
|
||||
diff format:
|
||||
@ -74,6 +74,11 @@ separate lines indicate the old and the new mode.
|
||||
rename from b
|
||||
rename to a
|
||||
|
||||
5. Hunk headers mention the name of the function to which the hunk
|
||||
applies. See "Defining a custom hunk-header" in
|
||||
linkgit:gitattributes[5] for details of how to tailor to this to
|
||||
specific languages.
|
||||
|
||||
|
||||
Combined diff format
|
||||
--------------------
|
||||
@ -81,9 +86,9 @@ Combined diff format
|
||||
Any diff-generating command can take the `-c` or `--cc` option to
|
||||
produce a 'combined diff' when showing a merge. This is the default
|
||||
format when showing merges with linkgit:git-diff[1] or
|
||||
linkgit:git-show[1]. Note also that you can give the `-m` option to any
|
||||
of these commands to force generation of diffs with individual parents
|
||||
of a merge.
|
||||
linkgit:git-show[1]. Note also that you can give suitable
|
||||
`--diff-merges` option to any of these commands to force generation of
|
||||
diffs in specific format.
|
||||
|
||||
A "combined diff" format looks like this:
|
||||
|
||||
|
@ -33,6 +33,64 @@ endif::git-diff[]
|
||||
show the patch by default, or to cancel the effect of `--patch`.
|
||||
endif::git-format-patch[]
|
||||
|
||||
ifdef::git-log[]
|
||||
--diff-merges=(off|none|on|first-parent|1|separate|m|combined|c|dense-combined|cc)::
|
||||
--no-diff-merges::
|
||||
Specify diff format to be used for merge commits. Default is
|
||||
{diff-merges-default} unless `--first-parent` is in use, in which case
|
||||
`first-parent` is the default.
|
||||
+
|
||||
--diff-merges=(off|none):::
|
||||
--no-diff-merges:::
|
||||
Disable output of diffs for merge commits. Useful to override
|
||||
implied value.
|
||||
+
|
||||
--diff-merges=on:::
|
||||
--diff-merges=m:::
|
||||
-m:::
|
||||
This option makes diff output for merge commits to be shown in
|
||||
the default format. `-m` will produce the output only if `-p`
|
||||
is given as well. The default format could be changed using
|
||||
`log.diffMerges` configuration parameter, which default value
|
||||
is `separate`.
|
||||
+
|
||||
--diff-merges=first-parent:::
|
||||
--diff-merges=1:::
|
||||
This option makes merge commits show the full diff with
|
||||
respect to the first parent only.
|
||||
+
|
||||
--diff-merges=separate:::
|
||||
This makes merge commits show the full diff with respect to
|
||||
each of the parents. Separate log entry and diff is generated
|
||||
for each parent.
|
||||
+
|
||||
--diff-merges=combined:::
|
||||
--diff-merges=c:::
|
||||
-c:::
|
||||
With this option, diff output for a merge commit shows the
|
||||
differences from each of the parents to the merge result
|
||||
simultaneously instead of showing pairwise diff between a
|
||||
parent and the result one at a time. Furthermore, it lists
|
||||
only files which were modified from all parents. `-c` implies
|
||||
`-p`.
|
||||
+
|
||||
--diff-merges=dense-combined:::
|
||||
--diff-merges=cc:::
|
||||
--cc:::
|
||||
With this option the output produced by
|
||||
`--diff-merges=combined` is further compressed by omitting
|
||||
uninteresting hunks whose contents in the parents have only
|
||||
two variants and the merge result picks one of them without
|
||||
modification. `--cc` implies `-p`.
|
||||
|
||||
--combined-all-paths::
|
||||
This flag causes combined diffs (used for merge commits) to
|
||||
list the name of the file from all parents. It thus only has
|
||||
effect when `--diff-merges=[dense-]combined` is in use, and
|
||||
is likely only useful if filename changes are detected (i.e.
|
||||
when either rename or copy detection have been requested).
|
||||
endif::git-log[]
|
||||
|
||||
-U<n>::
|
||||
--unified=<n>::
|
||||
Generate diffs with <n> lines of context instead of
|
||||
@ -242,11 +300,14 @@ explained for the configuration variable `core.quotePath` (see
|
||||
linkgit:git-config[1]).
|
||||
|
||||
--name-only::
|
||||
Show only names of changed files.
|
||||
Show only names of changed files. The file names are often encoded in UTF-8.
|
||||
For more information see the discussion about encoding in the linkgit:git-log[1]
|
||||
manual page.
|
||||
|
||||
--name-status::
|
||||
Show only names and status of changed files. See the description
|
||||
of the `--diff-filter` option on what the status letters mean.
|
||||
Just like `--name-only` the file names are often encoded in UTF-8.
|
||||
|
||||
--submodule[=<format>]::
|
||||
Specify how differences in submodules are shown. When specifying
|
||||
@ -527,11 +588,17 @@ When used together with `-B`, omit also the preimage in the deletion part
|
||||
of a delete/create pair.
|
||||
|
||||
-l<num>::
|
||||
The `-M` and `-C` options require O(n^2) processing time where n
|
||||
is the number of potential rename/copy targets. This
|
||||
option prevents rename/copy detection from running if
|
||||
the number of rename/copy targets exceeds the specified
|
||||
number.
|
||||
The `-M` and `-C` options involve some preliminary steps that
|
||||
can detect subsets of renames/copies cheaply, followed by an
|
||||
exhaustive fallback portion that compares all remaining
|
||||
unpaired destinations to all relevant sources. (For renames,
|
||||
only remaining unpaired sources are relevant; for copies, all
|
||||
original sources are relevant.) For N sources and
|
||||
destinations, this exhaustive check is O(N^2). This option
|
||||
prevents the exhaustive portion of rename/copy detection from
|
||||
running if the number of source/destination files involved
|
||||
exceeds the specified number. Defaults to diff.renameLimit.
|
||||
Note that a value of 0 is treated as unlimited.
|
||||
|
||||
ifndef::git-format-patch[]
|
||||
--diff-filter=[(A|C|D|M|R|T|U|X|B)...[*]]::
|
||||
@ -649,6 +716,14 @@ matches a pattern if removing any number of the final pathname
|
||||
components matches the pattern. For example, the pattern "`foo*bar`"
|
||||
matches "`fooasdfbar`" and "`foo/bar/baz/asdf`" but not "`foobarx`".
|
||||
|
||||
--skip-to=<file>::
|
||||
--rotate-to=<file>::
|
||||
Discard the files before the named <file> from the output
|
||||
(i.e. 'skip to'), or move them to the end of the output
|
||||
(i.e. 'rotate to'). These were invented primarily for use
|
||||
of the `git difftool` command, and may not be very useful
|
||||
otherwise.
|
||||
|
||||
ifndef::git-format-patch[]
|
||||
-R::
|
||||
Swap two inputs; that is, show differences from index or
|
||||
|
@ -7,6 +7,10 @@
|
||||
existing contents of `.git/FETCH_HEAD`. Without this
|
||||
option old data in `.git/FETCH_HEAD` will be overwritten.
|
||||
|
||||
--atomic::
|
||||
Use an atomic transaction to update local refs. Either all refs are
|
||||
updated, or on error, no refs are updated.
|
||||
|
||||
--depth=<depth>::
|
||||
Limit fetching to the specified number of commits from the tip of
|
||||
each remote branch history. If fetching to a 'shallow' repository
|
||||
@ -58,8 +62,17 @@ The argument to this option may be a glob on ref names, a ref, or the (possibly
|
||||
abbreviated) SHA-1 of a commit. Specifying a glob is equivalent to specifying
|
||||
this option multiple times, one for each matching ref name.
|
||||
+
|
||||
See also the `fetch.negotiationAlgorithm` configuration variable
|
||||
documented in linkgit:git-config[1].
|
||||
See also the `fetch.negotiationAlgorithm` and `push.negotiate`
|
||||
configuration variables documented in linkgit:git-config[1], and the
|
||||
`--negotiate-only` option below.
|
||||
|
||||
--negotiate-only::
|
||||
Do not fetch anything from the server, and instead print the
|
||||
ancestors of the provided `--negotiation-tip=*` arguments,
|
||||
which we have in common with the server.
|
||||
+
|
||||
Internally this is used to implement the `push.negotiate` option, see
|
||||
linkgit:git-config[1].
|
||||
|
||||
--dry-run::
|
||||
Show what would be done, without making any changes.
|
||||
@ -106,6 +119,11 @@ ifndef::git-pull[]
|
||||
setting `fetch.writeCommitGraph`.
|
||||
endif::git-pull[]
|
||||
|
||||
--prefetch::
|
||||
Modify the configured refspec to place all refs into the
|
||||
`refs/prefetch/` namespace. See the `prefetch` task in
|
||||
linkgit:git-maintenance[1].
|
||||
|
||||
-p::
|
||||
--prune::
|
||||
Before fetching, remove any remote-tracking references that no
|
||||
|
@ -15,6 +15,7 @@ SYNOPSIS
|
||||
[--whitespace=<option>] [-C<n>] [-p<n>] [--directory=<dir>]
|
||||
[--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]
|
||||
[--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]
|
||||
[--quoted-cr=<action>]
|
||||
[(<mbox> | <Maildir>)...]
|
||||
'git am' (--continue | --skip | --abort | --quit | --show-current-patch[=(diff|raw)])
|
||||
|
||||
@ -59,6 +60,9 @@ OPTIONS
|
||||
--no-scissors::
|
||||
Ignore scissors lines (see linkgit:git-mailinfo[1]).
|
||||
|
||||
--quoted-cr=<action>::
|
||||
This flag will be passed down to 'git mailinfo' (see linkgit:git-mailinfo[1]).
|
||||
|
||||
-m::
|
||||
--message-id::
|
||||
Pass the `-m` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]),
|
||||
@ -79,7 +83,7 @@ OPTIONS
|
||||
Pass `-u` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]).
|
||||
The proposed commit log message taken from the e-mail
|
||||
is re-coded into UTF-8 encoding (configuration variable
|
||||
`i18n.commitencoding` can be used to specify project's
|
||||
`i18n.commitEncoding` can be used to specify project's
|
||||
preferred encoding if it is not UTF-8).
|
||||
+
|
||||
This was optional in prior versions of git, but now it is the
|
||||
@ -174,6 +178,8 @@ default. You can use `--no-utf8` to override this.
|
||||
|
||||
--abort::
|
||||
Restore the original branch and abort the patching operation.
|
||||
Revert contents of files involved in the am operation to their
|
||||
pre-am state.
|
||||
|
||||
--quit::
|
||||
Abort the patching operation but keep HEAD and the index
|
||||
|
@ -84,12 +84,13 @@ OPTIONS
|
||||
|
||||
-3::
|
||||
--3way::
|
||||
When the patch does not apply cleanly, fall back on 3-way merge if
|
||||
the patch records the identity of blobs it is supposed to apply to,
|
||||
and we have those blobs available locally, possibly leaving the
|
||||
Attempt 3-way merge if the patch records the identity of blobs it is supposed
|
||||
to apply to and we have those blobs available locally, possibly leaving the
|
||||
conflict markers in the files in the working tree for the user to
|
||||
resolve. This option implies the `--index` option, and is incompatible
|
||||
with the `--reject` and the `--cached` options.
|
||||
resolve. This option implies the `--index` option unless the
|
||||
`--cached` option is used, and is incompatible with the `--reject` option.
|
||||
When used with the `--cached` option, any conflicts are left at higher stages
|
||||
in the cache.
|
||||
|
||||
--build-fake-ancestor=<file>::
|
||||
Newer 'git diff' output has embedded 'index information'
|
||||
|
@ -226,7 +226,7 @@ commit commentary), a blame viewer will not care.
|
||||
MAPPING AUTHORS
|
||||
---------------
|
||||
|
||||
include::mailmap.txt[]
|
||||
See linkgit:gitmailmap[5].
|
||||
|
||||
|
||||
SEE ALSO
|
||||
|
@ -78,8 +78,8 @@ renaming. If <newbranch> exists, -M must be used to force the rename
|
||||
to happen.
|
||||
|
||||
The `-c` and `-C` options have the exact same semantics as `-m` and
|
||||
`-M`, except instead of the branch being renamed it along with its
|
||||
config and reflog will be copied to a new name.
|
||||
`-M`, except instead of the branch being renamed, it will be copied to a
|
||||
new name, along with its config and reflog.
|
||||
|
||||
With a `-d` or `-D` option, `<branchname>` will be deleted. You may
|
||||
specify more than one branch for deletion. If the branch currently
|
||||
@ -118,7 +118,8 @@ OPTIONS
|
||||
Reset <branchname> to <startpoint>, even if <branchname> exists
|
||||
already. Without `-f`, 'git branch' refuses to change an existing branch.
|
||||
In combination with `-d` (or `--delete`), allow deleting the
|
||||
branch irrespective of its merged status. In combination with
|
||||
branch irrespective of its merged status, or whether it even
|
||||
points to a valid commit. In combination with
|
||||
`-m` (or `--move`), allow renaming the branch even if the new
|
||||
branch name already exists, the same applies for `-c` (or `--copy`).
|
||||
|
||||
@ -153,7 +154,7 @@ OPTIONS
|
||||
--column[=<options>]::
|
||||
--no-column::
|
||||
Display branch listing in columns. See configuration variable
|
||||
column.branch for option syntax.`--column` and `--no-column`
|
||||
`column.branch` for option syntax. `--column` and `--no-column`
|
||||
without options are equivalent to 'always' and 'never' respectively.
|
||||
+
|
||||
This option is only applicable in non-verbose mode.
|
||||
|
@ -40,8 +40,8 @@ OPTIONS
|
||||
-------
|
||||
-o <path>::
|
||||
--output-directory <path>::
|
||||
Place the resulting bug report file in `<path>` instead of the root of
|
||||
the Git repository.
|
||||
Place the resulting bug report file in `<path>` instead of the current
|
||||
directory.
|
||||
|
||||
-s <format>::
|
||||
--suffix <format>::
|
||||
|
@ -18,21 +18,48 @@ SYNOPSIS
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
Some workflows require that one or more branches of development on one
|
||||
machine be replicated on another machine, but the two machines cannot
|
||||
be directly connected, and therefore the interactive Git protocols (git,
|
||||
ssh, http) cannot be used.
|
||||
Create, unpack, and manipulate "bundle" files. Bundles are used for
|
||||
the "offline" transfer of Git objects without an active "server"
|
||||
sitting on the other side of the network connection.
|
||||
|
||||
The 'git bundle' command packages objects and references in an archive
|
||||
at the originating machine, which can then be imported into another
|
||||
repository using 'git fetch', 'git pull', or 'git clone',
|
||||
after moving the archive by some means (e.g., by sneakernet).
|
||||
They can be used to create both incremental and full backups of a
|
||||
repository, and to relay the state of the references in one repository
|
||||
to another.
|
||||
|
||||
As no
|
||||
direct connection between the repositories exists, the user must specify a
|
||||
basis for the bundle that is held by the destination repository: the
|
||||
bundle assumes that all objects in the basis are already in the
|
||||
destination repository.
|
||||
Git commands that fetch or otherwise "read" via protocols such as
|
||||
`ssh://` and `https://` can also operate on bundle files. It is
|
||||
possible linkgit:git-clone[1] a new repository from a bundle, to use
|
||||
linkgit:git-fetch[1] to fetch from one, and to list the references
|
||||
contained within it with linkgit:git-ls-remote[1]. There's no
|
||||
corresponding "write" support, i.e.a 'git push' into a bundle is not
|
||||
supported.
|
||||
|
||||
See the "EXAMPLES" section below for examples of how to use bundles.
|
||||
|
||||
BUNDLE FORMAT
|
||||
-------------
|
||||
|
||||
Bundles are `.pack` files (see linkgit:git-pack-objects[1]) with a
|
||||
header indicating what references are contained within the bundle.
|
||||
|
||||
Like the the packed archive format itself bundles can either be
|
||||
self-contained, or be created using exclusions.
|
||||
See the "OBJECT PREREQUISITES" section below.
|
||||
|
||||
Bundles created using revision exclusions are "thin packs" created
|
||||
using the `--thin` option to linkgit:git-pack-objects[1], and
|
||||
unbundled using the `--fix-thin` option to linkgit:git-index-pack[1].
|
||||
|
||||
There is no option to create a "thick pack" when using revision
|
||||
exclusions, users should not be concerned about the difference. By
|
||||
using "thin packs" bundles created using exclusions are smaller in
|
||||
size. That they're "thin" under the hood is merely noted here as a
|
||||
curiosity, and as a reference to other documentation
|
||||
|
||||
See link:technical/bundle-format.html[the `bundle-format`
|
||||
documentation] for more details and the discussion of "thin pack" in
|
||||
link:technical/pack-format.html[the pack format documentation] for
|
||||
further details.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
@ -117,28 +144,88 @@ unbundle <file>::
|
||||
SPECIFYING REFERENCES
|
||||
---------------------
|
||||
|
||||
'git bundle' will only package references that are shown by
|
||||
'git show-ref': this includes heads, tags, and remote heads. References
|
||||
such as `master~1` cannot be packaged, but are perfectly suitable for
|
||||
defining the basis. More than one reference may be packaged, and more
|
||||
than one basis can be specified. The objects packaged are those not
|
||||
contained in the union of the given bases. Each basis can be
|
||||
specified explicitly (e.g. `^master~10`), or implicitly (e.g.
|
||||
`master~10..master`, `--since=10.days.ago master`).
|
||||
Revisions must accompanied by reference names to be packaged in a
|
||||
bundle.
|
||||
|
||||
More than one reference may be packaged, and more than one set of prerequisite objects can
|
||||
be specified. The objects packaged are those not contained in the
|
||||
union of the prerequisites.
|
||||
|
||||
The 'git bundle create' command resolves the reference names for you
|
||||
using the same rules as `git rev-parse --abbrev-ref=loose`. Each
|
||||
prerequisite can be specified explicitly (e.g. `^master~10`), or implicitly
|
||||
(e.g. `master~10..master`, `--since=10.days.ago master`).
|
||||
|
||||
All of these simple cases are OK (assuming we have a "master" and
|
||||
"next" branch):
|
||||
|
||||
----------------
|
||||
$ git bundle create master.bundle master
|
||||
$ echo master | git bundle create master.bundle --stdin
|
||||
$ git bundle create master-and-next.bundle master next
|
||||
$ (echo master; echo next) | git bundle create master-and-next.bundle --stdin
|
||||
----------------
|
||||
|
||||
And so are these (and the same but omitted `--stdin` examples):
|
||||
|
||||
----------------
|
||||
$ git bundle create recent-master.bundle master~10..master
|
||||
$ git bundle create recent-updates.bundle master~10..master next~5..next
|
||||
----------------
|
||||
|
||||
A revision name or a range whose right-hand-side cannot be resolved to
|
||||
a reference is not accepted:
|
||||
|
||||
----------------
|
||||
$ git bundle create HEAD.bundle $(git rev-parse HEAD)
|
||||
fatal: Refusing to create empty bundle.
|
||||
$ git bundle create master-yesterday.bundle master~10..master~5
|
||||
fatal: Refusing to create empty bundle.
|
||||
----------------
|
||||
|
||||
OBJECT PREREQUISITES
|
||||
--------------------
|
||||
|
||||
When creating bundles it is possible to create a self-contained bundle
|
||||
that can be unbundled in a repository with no common history, as well
|
||||
as providing negative revisions to exclude objects needed in the
|
||||
earlier parts of the history.
|
||||
|
||||
Feeding a revision such as `new` to `git bundle create` will create a
|
||||
bundle file that contains all the objects reachable from the revision
|
||||
`new`. That bundle can be unbundled in any repository to obtain a full
|
||||
history that leads to the revision `new`:
|
||||
|
||||
----------------
|
||||
$ git bundle create full.bundle new
|
||||
----------------
|
||||
|
||||
A revision range such as `old..new` will produce a bundle file that
|
||||
will require the revision `old` (and any objects reachable from it)
|
||||
to exist for the bundle to be "unbundle"-able:
|
||||
|
||||
----------------
|
||||
$ git bundle create full.bundle old..new
|
||||
----------------
|
||||
|
||||
A self-contained bundle without any prerequisites can be extracted
|
||||
into anywhere, even into an empty repository, or be cloned from
|
||||
(i.e., `new`, but not `old..new`).
|
||||
|
||||
It is very important that the basis used be held by the destination.
|
||||
It is okay to err on the side of caution, causing the bundle file
|
||||
to contain objects already in the destination, as these are ignored
|
||||
when unpacking at the destination.
|
||||
|
||||
`git clone` can use any bundle created without negative refspecs
|
||||
(e.g., `new`, but not `old..new`).
|
||||
If you want to match `git clone --mirror`, which would include your
|
||||
refs such as `refs/remotes/*`, use `--all`.
|
||||
If you want to provide the same set of refs that a clone directly
|
||||
from the source repository would get, use `--branches --tags` for
|
||||
the `<git-rev-list-args>`.
|
||||
|
||||
The 'git bundle verify' command can be used to check whether your
|
||||
recipient repository has the required prerequisite commits for a
|
||||
bundle.
|
||||
|
||||
EXAMPLES
|
||||
--------
|
||||
|
||||
@ -149,7 +236,7 @@ but we can move data from A to B via some mechanism (CD, email, etc.).
|
||||
We want to update R2 with development made on the branch master in R1.
|
||||
|
||||
To bootstrap the process, you can first create a bundle that does not have
|
||||
any basis. You can use a tag to remember up to what commit you last
|
||||
any prerequisites. You can use a tag to remember up to what commit you last
|
||||
processed, in order to make it easy to later update the other repository
|
||||
with an incremental bundle:
|
||||
|
||||
@ -200,7 +287,7 @@ machineB$ git pull
|
||||
|
||||
If you know up to what commit the intended recipient repository should
|
||||
have the necessary objects, you can use that knowledge to specify the
|
||||
basis, giving a cut-off point to limit the revisions and objects that go
|
||||
prerequisites, giving a cut-off point to limit the revisions and objects that go
|
||||
in the resulting bundle. The previous example used the lastR2bundle tag
|
||||
for this purpose, but you can use any other options that you would give to
|
||||
the linkgit:git-log[1] command. Here are more examples:
|
||||
@ -211,7 +298,7 @@ You can use a tag that is present in both:
|
||||
$ git bundle create mybundle v1.0.0..master
|
||||
----------------
|
||||
|
||||
You can use a basis based on time:
|
||||
You can use a prerequisite based on time:
|
||||
|
||||
----------------
|
||||
$ git bundle create mybundle --since=10.days master
|
||||
@ -224,7 +311,7 @@ $ git bundle create mybundle -10 master
|
||||
----------------
|
||||
|
||||
You can run `git-bundle verify` to see if you can extract from a bundle
|
||||
that was created with a basis:
|
||||
that was created with a prerequisite:
|
||||
|
||||
----------------
|
||||
$ git bundle verify mybundle
|
||||
|
@ -35,42 +35,42 @@ OPTIONS
|
||||
|
||||
-t::
|
||||
Instead of the content, show the object type identified by
|
||||
<object>.
|
||||
`<object>`.
|
||||
|
||||
-s::
|
||||
Instead of the content, show the object size identified by
|
||||
<object>.
|
||||
`<object>`.
|
||||
|
||||
-e::
|
||||
Exit with zero status if <object> exists and is a valid
|
||||
object. If <object> is of an invalid format exit with non-zero and
|
||||
Exit with zero status if `<object>` exists and is a valid
|
||||
object. If `<object>` is of an invalid format exit with non-zero and
|
||||
emits an error on stderr.
|
||||
|
||||
-p::
|
||||
Pretty-print the contents of <object> based on its type.
|
||||
Pretty-print the contents of `<object>` based on its type.
|
||||
|
||||
<type>::
|
||||
Typically this matches the real type of <object> but asking
|
||||
Typically this matches the real type of `<object>` but asking
|
||||
for a type that can trivially be dereferenced from the given
|
||||
<object> is also permitted. An example is to ask for a
|
||||
"tree" with <object> being a commit object that contains it,
|
||||
or to ask for a "blob" with <object> being a tag object that
|
||||
`<object>` is also permitted. An example is to ask for a
|
||||
"tree" with `<object>` being a commit object that contains it,
|
||||
or to ask for a "blob" with `<object>` being a tag object that
|
||||
points at it.
|
||||
|
||||
--textconv::
|
||||
Show the content as transformed by a textconv filter. In this case,
|
||||
<object> has to be of the form <tree-ish>:<path>, or :<path> in
|
||||
`<object>` has to be of the form `<tree-ish>:<path>`, or `:<path>` in
|
||||
order to apply the filter to the content recorded in the index at
|
||||
<path>.
|
||||
`<path>`.
|
||||
|
||||
--filters::
|
||||
Show the content as converted by the filters configured in
|
||||
the current working tree for the given <path> (i.e. smudge filters,
|
||||
end-of-line conversion, etc). In this case, <object> has to be of
|
||||
the form <tree-ish>:<path>, or :<path>.
|
||||
the current working tree for the given `<path>` (i.e. smudge filters,
|
||||
end-of-line conversion, etc). In this case, `<object>` has to be of
|
||||
the form `<tree-ish>:<path>`, or `:<path>`.
|
||||
|
||||
--path=<path>::
|
||||
For use with --textconv or --filters, to allow specifying an object
|
||||
For use with `--textconv` or `--filters`, to allow specifying an object
|
||||
name and a path separately, e.g. when it is difficult to figure out
|
||||
the revision from which the blob came.
|
||||
|
||||
@ -115,15 +115,15 @@ OPTIONS
|
||||
repository.
|
||||
|
||||
--allow-unknown-type::
|
||||
Allow -s or -t to query broken/corrupt objects of unknown type.
|
||||
Allow `-s` or `-t` to query broken/corrupt objects of unknown type.
|
||||
|
||||
--follow-symlinks::
|
||||
With --batch or --batch-check, follow symlinks inside the
|
||||
With `--batch` or `--batch-check`, follow symlinks inside the
|
||||
repository when requesting objects with extended SHA-1
|
||||
expressions of the form tree-ish:path-in-tree. Instead of
|
||||
providing output about the link itself, provide output about
|
||||
the linked-to object. If a symlink points outside the
|
||||
tree-ish (e.g. a link to /foo or a root-level link to ../foo),
|
||||
tree-ish (e.g. a link to `/foo` or a root-level link to `../foo`),
|
||||
the portion of the link which is outside the tree will be
|
||||
printed.
|
||||
+
|
||||
@ -175,15 +175,15 @@ respectively print:
|
||||
|
||||
OUTPUT
|
||||
------
|
||||
If `-t` is specified, one of the <type>.
|
||||
If `-t` is specified, one of the `<type>`.
|
||||
|
||||
If `-s` is specified, the size of the <object> in bytes.
|
||||
If `-s` is specified, the size of the `<object>` in bytes.
|
||||
|
||||
If `-e` is specified, no output, unless the <object> is malformed.
|
||||
If `-e` is specified, no output, unless the `<object>` is malformed.
|
||||
|
||||
If `-p` is specified, the contents of <object> are pretty-printed.
|
||||
If `-p` is specified, the contents of `<object>` are pretty-printed.
|
||||
|
||||
If <type> is specified, the raw (though uncompressed) contents of the <object>
|
||||
If `<type>` is specified, the raw (though uncompressed) contents of the `<object>`
|
||||
will be returned.
|
||||
|
||||
BATCH OUTPUT
|
||||
@ -200,7 +200,7 @@ object, with placeholders of the form `%(atom)` expanded, followed by a
|
||||
newline. The available atoms are:
|
||||
|
||||
`objectname`::
|
||||
The 40-hex object name of the object.
|
||||
The full hex representation of the object name.
|
||||
|
||||
`objecttype`::
|
||||
The type of the object (the same as `cat-file -t` reports).
|
||||
@ -215,8 +215,9 @@ newline. The available atoms are:
|
||||
|
||||
`deltabase`::
|
||||
If the object is stored as a delta on-disk, this expands to the
|
||||
40-hex sha1 of the delta base object. Otherwise, expands to the
|
||||
null sha1 (40 zeroes). See `CAVEATS` below.
|
||||
full hex representation of the delta base object name.
|
||||
Otherwise, expands to the null OID (all zeroes). See `CAVEATS`
|
||||
below.
|
||||
|
||||
`rest`::
|
||||
If this atom is used in the output string, input lines are split
|
||||
@ -235,14 +236,14 @@ newline.
|
||||
For example, `--batch` without a custom format would produce:
|
||||
|
||||
------------
|
||||
<sha1> SP <type> SP <size> LF
|
||||
<oid> SP <type> SP <size> LF
|
||||
<contents> LF
|
||||
------------
|
||||
|
||||
Whereas `--batch-check='%(objectname) %(objecttype)'` would produce:
|
||||
|
||||
------------
|
||||
<sha1> SP <type> LF
|
||||
<oid> SP <type> LF
|
||||
------------
|
||||
|
||||
If a name is specified on stdin that cannot be resolved to an object in
|
||||
@ -258,7 +259,7 @@ If a name is specified that might refer to more than one object (an ambiguous sh
|
||||
<object> SP ambiguous LF
|
||||
------------
|
||||
|
||||
If --follow-symlinks is used, and a symlink in the repository points
|
||||
If `--follow-symlinks` is used, and a symlink in the repository points
|
||||
outside the repository, then `cat-file` will ignore any custom format
|
||||
and print:
|
||||
|
||||
@ -267,11 +268,11 @@ symlink SP <size> LF
|
||||
<symlink> LF
|
||||
------------
|
||||
|
||||
The symlink will either be absolute (beginning with a /), or relative
|
||||
to the tree root. For instance, if dir/link points to ../../foo, then
|
||||
<symlink> will be ../foo. <size> is the size of the symlink in bytes.
|
||||
The symlink will either be absolute (beginning with a `/`), or relative
|
||||
to the tree root. For instance, if dir/link points to `../../foo`, then
|
||||
`<symlink>` will be `../foo`. `<size>` is the size of the symlink in bytes.
|
||||
|
||||
If --follow-symlinks is used, the following error messages will be
|
||||
If `--follow-symlinks` is used, the following error messages will be
|
||||
displayed:
|
||||
|
||||
------------
|
||||
|
@ -36,10 +36,17 @@ name is provided or known to the 'mailmap', ``Name $$<user@host>$$'' is
|
||||
printed; otherwise only ``$$<user@host>$$'' is printed.
|
||||
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
||||
See `mailmap.file` and `mailmap.blob` in linkgit:git-config[1] for how
|
||||
to specify a custom `.mailmap` target file or object.
|
||||
|
||||
|
||||
MAPPING AUTHORS
|
||||
---------------
|
||||
|
||||
include::mailmap.txt[]
|
||||
See linkgit:gitmailmap[5].
|
||||
|
||||
|
||||
GIT
|
||||
|
@ -15,7 +15,7 @@ SYNOPSIS
|
||||
[--dissociate] [--separate-git-dir <git dir>]
|
||||
[--depth <depth>] [--[no-]single-branch] [--no-tags]
|
||||
[--recurse-submodules[=<pathspec>]] [--[no-]shallow-submodules]
|
||||
[--[no-]remote-submodules] [--jobs <n>] [--sparse]
|
||||
[--[no-]remote-submodules] [--jobs <n>] [--sparse] [--[no-]reject-shallow]
|
||||
[--filter=<filter>] [--] <repository>
|
||||
[<directory>]
|
||||
|
||||
@ -57,6 +57,10 @@ repository is specified as a URL, then this flag is ignored (and we
|
||||
never use the local optimizations). Specifying `--no-local` will
|
||||
override the default when `/path/to/repo` is given, using the regular
|
||||
Git transport instead.
|
||||
+
|
||||
*NOTE*: this operation can race with concurrent modification to the
|
||||
source repository, similar to running `cp -r src dst` while modifying
|
||||
`src`.
|
||||
|
||||
--no-hardlinks::
|
||||
Force the cloning process from a repository on a local
|
||||
@ -145,6 +149,11 @@ objects from the source repository into a pack in the cloned repository.
|
||||
--no-checkout::
|
||||
No checkout of HEAD is performed after the clone is complete.
|
||||
|
||||
--[no-]reject-shallow::
|
||||
Fail if the source repository is a shallow repository.
|
||||
The 'clone.rejectShallow' configuration variable can be used to
|
||||
specify the default.
|
||||
|
||||
--bare::
|
||||
Make a 'bare' Git repository. That is, instead of
|
||||
creating `<directory>` and placing the administrative
|
||||
|
@ -39,7 +39,7 @@ OPTIONS
|
||||
--indent=<string>::
|
||||
String to be printed at the beginning of each line.
|
||||
|
||||
--nl=<N>::
|
||||
--nl=<string>::
|
||||
String to be printed at the end of each line,
|
||||
including newline character.
|
||||
|
||||
|
@ -9,12 +9,13 @@ SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git commit' [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]
|
||||
[--dry-run] [(-c | -C | --fixup | --squash) <commit>]
|
||||
[--dry-run] [(-c | -C | --squash) <commit> | --fixup [(amend|reword):]<commit>)]
|
||||
[-F <file> | -m <msg>] [--reset-author] [--allow-empty]
|
||||
[--allow-empty-message] [--no-verify] [-e] [--author=<author>]
|
||||
[--date=<date>] [--cleanup=<mode>] [--[no-]status]
|
||||
[-i | -o] [--pathspec-from-file=<file> [--pathspec-file-nul]]
|
||||
[-S[<keyid>]] [--] [<pathspec>...]
|
||||
[(--trailer <token>[(=|:)<value>])...] [-S[<keyid>]]
|
||||
[--] [<pathspec>...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@ -71,7 +72,7 @@ OPTIONS
|
||||
|
||||
-p::
|
||||
--patch::
|
||||
Use the interactive patch selection interface to chose
|
||||
Use the interactive patch selection interface to choose
|
||||
which changes to commit. See linkgit:git-add[1] for
|
||||
details.
|
||||
|
||||
@ -86,11 +87,44 @@ OPTIONS
|
||||
Like '-C', but with `-c` the editor is invoked, so that
|
||||
the user can further edit the commit message.
|
||||
|
||||
--fixup=<commit>::
|
||||
Construct a commit message for use with `rebase --autosquash`.
|
||||
The commit message will be the subject line from the specified
|
||||
commit with a prefix of "fixup! ". See linkgit:git-rebase[1]
|
||||
for details.
|
||||
--fixup=[(amend|reword):]<commit>::
|
||||
Create a new commit which "fixes up" `<commit>` when applied with
|
||||
`git rebase --autosquash`. Plain `--fixup=<commit>` creates a
|
||||
"fixup!" commit which changes the content of `<commit>` but leaves
|
||||
its log message untouched. `--fixup=amend:<commit>` is similar but
|
||||
creates an "amend!" commit which also replaces the log message of
|
||||
`<commit>` with the log message of the "amend!" commit.
|
||||
`--fixup=reword:<commit>` creates an "amend!" commit which
|
||||
replaces the log message of `<commit>` with its own log message
|
||||
but makes no changes to the content of `<commit>`.
|
||||
+
|
||||
The commit created by plain `--fixup=<commit>` has a subject
|
||||
composed of "fixup!" followed by the subject line from <commit>,
|
||||
and is recognized specially by `git rebase --autosquash`. The `-m`
|
||||
option may be used to supplement the log message of the created
|
||||
commit, but the additional commentary will be thrown away once the
|
||||
"fixup!" commit is squashed into `<commit>` by
|
||||
`git rebase --autosquash`.
|
||||
+
|
||||
The commit created by `--fixup=amend:<commit>` is similar but its
|
||||
subject is instead prefixed with "amend!". The log message of
|
||||
<commit> is copied into the log message of the "amend!" commit and
|
||||
opened in an editor so it can be refined. When `git rebase
|
||||
--autosquash` squashes the "amend!" commit into `<commit>`, the
|
||||
log message of `<commit>` is replaced by the refined log message
|
||||
from the "amend!" commit. It is an error for the "amend!" commit's
|
||||
log message to be empty unless `--allow-empty-message` is
|
||||
specified.
|
||||
+
|
||||
`--fixup=reword:<commit>` is shorthand for `--fixup=amend:<commit>
|
||||
--only`. It creates an "amend!" commit with only a log message
|
||||
(ignoring any changes staged in the index). When squashed by `git
|
||||
rebase --autosquash`, it replaces the log message of `<commit>`
|
||||
without making any other changes.
|
||||
+
|
||||
Neither "fixup!" nor "amend!" commits change authorship of
|
||||
`<commit>` when applied by `git rebase --autosquash`.
|
||||
See linkgit:git-rebase[1] for details.
|
||||
|
||||
--squash=<commit>::
|
||||
Construct a commit message for use with `rebase --autosquash`.
|
||||
@ -166,6 +200,17 @@ The `-m` option is mutually exclusive with `-c`, `-C`, and `-F`.
|
||||
|
||||
include::signoff-option.txt[]
|
||||
|
||||
--trailer <token>[(=|:)<value>]::
|
||||
Specify a (<token>, <value>) pair that should be applied as a
|
||||
trailer. (e.g. `git commit --trailer "Signed-off-by:C O Mitter \
|
||||
<committer@example.com>" --trailer "Helped-by:C O Mitter \
|
||||
<committer@example.com>"` will add the "Signed-off-by" trailer
|
||||
and the "Helped-by" trailer to the commit message.)
|
||||
The `trailer.*` configuration variables
|
||||
(linkgit:git-interpret-trailers[1]) can be used to define if
|
||||
a duplicated trailer is omitted, where in the run of trailers
|
||||
each trailer would appear, and other details.
|
||||
|
||||
-n::
|
||||
--no-verify::
|
||||
This option bypasses the pre-commit and commit-msg hooks.
|
||||
|
@ -71,6 +71,10 @@ codes are:
|
||||
|
||||
On success, the command returns the exit code 0.
|
||||
|
||||
A list of all available configuration variables can be obtained using the
|
||||
`git help --config` command.
|
||||
|
||||
[[OPTIONS]]
|
||||
OPTIONS
|
||||
-------
|
||||
|
||||
@ -143,7 +147,13 @@ See also <<FILES>>.
|
||||
|
||||
-f config-file::
|
||||
--file config-file::
|
||||
Use the given config file instead of the one specified by GIT_CONFIG.
|
||||
For writing options: write to the specified file rather than the
|
||||
repository `.git/config`.
|
||||
+
|
||||
For reading options: read only from the specified file rather than from all
|
||||
available files.
|
||||
+
|
||||
See also <<FILES>>.
|
||||
|
||||
--blob blob::
|
||||
Similar to `--file` but use the given blob instead of a file. E.g.
|
||||
@ -325,20 +335,18 @@ All writing options will per default write to the repository specific
|
||||
configuration file. Note that this also affects options like `--replace-all`
|
||||
and `--unset`. *'git config' will only ever change one file at a time*.
|
||||
|
||||
You can override these rules either by command-line options or by environment
|
||||
variables. The `--global`, `--system` and `--worktree` options will limit
|
||||
the file used to the global, system-wide or per-worktree file respectively.
|
||||
The `GIT_CONFIG` environment variable has a similar effect, but you
|
||||
can specify any filename you want.
|
||||
You can override these rules using the `--global`, `--system`,
|
||||
`--local`, `--worktree`, and `--file` command-line options; see
|
||||
<<OPTIONS>> above.
|
||||
|
||||
|
||||
ENVIRONMENT
|
||||
-----------
|
||||
|
||||
GIT_CONFIG::
|
||||
Take the configuration from the given file instead of .git/config.
|
||||
Using the "--global" option forces this to ~/.gitconfig. Using the
|
||||
"--system" option forces this to $(prefix)/etc/gitconfig.
|
||||
GIT_CONFIG_GLOBAL::
|
||||
GIT_CONFIG_SYSTEM::
|
||||
Take the configuration from the given files instead from global or
|
||||
system-level configuration. See linkgit:git[1] for details.
|
||||
|
||||
GIT_CONFIG_NOSYSTEM::
|
||||
Whether to skip reading settings from the system-wide
|
||||
@ -346,6 +354,28 @@ GIT_CONFIG_NOSYSTEM::
|
||||
|
||||
See also <<FILES>>.
|
||||
|
||||
GIT_CONFIG_COUNT::
|
||||
GIT_CONFIG_KEY_<n>::
|
||||
GIT_CONFIG_VALUE_<n>::
|
||||
If GIT_CONFIG_COUNT is set to a positive number, all environment pairs
|
||||
GIT_CONFIG_KEY_<n> and GIT_CONFIG_VALUE_<n> up to that number will be
|
||||
added to the process's runtime configuration. The config pairs are
|
||||
zero-indexed. Any missing key or value is treated as an error. An empty
|
||||
GIT_CONFIG_COUNT is treated the same as GIT_CONFIG_COUNT=0, namely no
|
||||
pairs are processed. These environment variables will override values
|
||||
in configuration files, but will be overridden by any explicit options
|
||||
passed via `git -c`.
|
||||
+
|
||||
This is useful for cases where you want to spawn multiple git commands
|
||||
with a common configuration but cannot depend on a configuration file,
|
||||
for example when writing scripts.
|
||||
|
||||
GIT_CONFIG::
|
||||
If no `--file` option is provided to `git config`, use the file
|
||||
given by `GIT_CONFIG` as if it were provided via `--file`. This
|
||||
variable has no effect on other Git commands, and is mostly for
|
||||
historical compatibility; there is generally no reason to use it
|
||||
instead of the `--file` option.
|
||||
|
||||
[[EXAMPLES]]
|
||||
EXAMPLES
|
||||
|
@ -159,3 +159,7 @@ empty string.
|
||||
+
|
||||
Components which are missing from the URL (e.g., there is no
|
||||
username in the example above) will be left unset.
|
||||
|
||||
GIT
|
||||
---
|
||||
Part of the linkgit:git[1] suite
|
||||
|
@ -24,6 +24,18 @@ Usage:
|
||||
[verse]
|
||||
'git-cvsserver' [<options>] [pserver|server] [<directory> ...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
This application is a CVS emulation layer for Git.
|
||||
|
||||
It is highly functional. However, not all methods are implemented,
|
||||
and for those methods that are implemented,
|
||||
not all switches are implemented.
|
||||
|
||||
Testing has been done using both the CLI CVS client, and the Eclipse CVS
|
||||
plugin. Most functionality works fine with both of these clients.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
|
||||
@ -57,18 +69,6 @@ access still needs to be enabled by the `gitcvs.enabled` config option
|
||||
unless `--export-all` was given, too.
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
This application is a CVS emulation layer for Git.
|
||||
|
||||
It is highly functional. However, not all methods are implemented,
|
||||
and for those methods that are implemented,
|
||||
not all switches are implemented.
|
||||
|
||||
Testing has been done using both the CLI CVS client, and the Eclipse CVS
|
||||
plugin. Most functionality works fine with both of these clients.
|
||||
|
||||
LIMITATIONS
|
||||
-----------
|
||||
|
||||
@ -99,7 +99,7 @@ looks like
|
||||
|
||||
------
|
||||
|
||||
Only anonymous access is provided by pserve by default. To commit you
|
||||
Only anonymous access is provided by pserver by default. To commit you
|
||||
will have to create pserver accounts, simply add a gitcvs.authdb
|
||||
setting in the config file of the repositories you want the cvsserver
|
||||
to allow writes to, for example:
|
||||
@ -114,21 +114,20 @@ The format of these files is username followed by the encrypted password,
|
||||
for example:
|
||||
|
||||
------
|
||||
myuser:$1Oyx5r9mdGZ2
|
||||
myuser:$1$BA)@$vbnMJMDym7tA32AamXrm./
|
||||
myuser:sqkNi8zPf01HI
|
||||
myuser:$1$9K7FzU28$VfF6EoPYCJEYcVQwATgOP/
|
||||
myuser:$5$.NqmNH1vwfzGpV8B$znZIcumu1tNLATgV2l6e1/mY8RzhUDHMOaVOeL1cxV3
|
||||
------
|
||||
You can use the 'htpasswd' facility that comes with Apache to make these
|
||||
files, but Apache's MD5 crypt method differs from the one used by most C
|
||||
library's crypt() function, so don't use the -m option.
|
||||
files, but only with the -d option (or -B if your system suports it).
|
||||
|
||||
Alternatively you can produce the password with perl's crypt() operator:
|
||||
-----
|
||||
perl -e 'my ($user, $pass) = @ARGV; printf "%s:%s\n", $user, crypt($user, $pass)' $USER password
|
||||
-----
|
||||
Preferably use the system specific utility that manages password hash
|
||||
creation in your platform (e.g. mkpasswd in Linux, encrypt in OpenBSD or
|
||||
pwhash in NetBSD) and paste it in the right location.
|
||||
|
||||
Then provide your password via the pserver method, for example:
|
||||
------
|
||||
cvs -d:pserver:someuser:somepassword <at> server/path/repo.git co <HEAD_name>
|
||||
cvs -d:pserver:someuser:somepassword@server:/path/repo.git co <HEAD_name>
|
||||
------
|
||||
No special setup is needed for SSH access, other than having Git tools
|
||||
in the PATH. If you have clients that do not accept the CVS_SERVER
|
||||
@ -138,7 +137,7 @@ Note: Newer CVS versions (>= 1.12.11) also support specifying
|
||||
CVS_SERVER directly in CVSROOT like
|
||||
|
||||
------
|
||||
cvs -d ":ext;CVS_SERVER=git cvsserver:user@server/path/repo.git" co <HEAD_name>
|
||||
cvs -d ":ext;CVS_SERVER=git cvsserver:user@server/path/repo.git" co <HEAD_name>
|
||||
------
|
||||
This has the advantage that it will be saved in your 'CVS/Root' files and
|
||||
you don't need to worry about always setting the correct environment
|
||||
@ -186,8 +185,8 @@ allowing access over SSH.
|
||||
+
|
||||
--
|
||||
------
|
||||
export CVSROOT=:ext:user@server:/var/git/project.git
|
||||
export CVS_SERVER="git cvsserver"
|
||||
export CVSROOT=:ext:user@server:/var/git/project.git
|
||||
export CVS_SERVER="git cvsserver"
|
||||
------
|
||||
--
|
||||
4. For SSH clients that will make commits, make sure their server-side
|
||||
@ -203,7 +202,7 @@ allowing access over SSH.
|
||||
`project-master` directory:
|
||||
+
|
||||
------
|
||||
cvs co -d project-master master
|
||||
cvs co -d project-master master
|
||||
------
|
||||
|
||||
[[dbbackend]]
|
||||
|
@ -63,9 +63,10 @@ OPTIONS
|
||||
Automatically implies --tags.
|
||||
|
||||
--abbrev=<n>::
|
||||
Instead of using the default 7 hexadecimal digits as the
|
||||
abbreviated object name, use <n> digits, or as many digits
|
||||
as needed to form a unique object name. An <n> of 0
|
||||
Instead of using the default number of hexadecimal digits (which
|
||||
will vary according to the number of objects in the repository with
|
||||
a default of 7) of the abbreviated object name, use <n> digits, or
|
||||
as many digits as needed to form a unique object name. An <n> of 0
|
||||
will suppress long format, only showing the closest tag.
|
||||
|
||||
--candidates=<n>::
|
||||
@ -139,8 +140,11 @@ at the end.
|
||||
|
||||
The number of additional commits is the number
|
||||
of commits which would be displayed by "git log v1.0.4..parent".
|
||||
The hash suffix is "-g" + unambiguous abbreviation for the tip commit
|
||||
of parent (which was `2414721b194453f058079d897d13c4e377f92dc6`).
|
||||
The hash suffix is "-g" + an unambigous abbreviation for the tip commit
|
||||
of parent (which was `2414721b194453f058079d897d13c4e377f92dc6`). The
|
||||
length of the abbreviation scales as the repository grows, using the
|
||||
approximate number of objects in the repository and a bit of math
|
||||
around the birthday paradox, and defaults to a minimum of 7.
|
||||
The "g" prefix stands for "git" and is used to allow describing the version of
|
||||
a software depending on the SCM the software is managed with. This is useful
|
||||
in an environment where people may use different SCMs.
|
||||
|
@ -51,16 +51,20 @@ files on disk.
|
||||
--staged is a synonym of --cached.
|
||||
+
|
||||
If --merge-base is given, instead of using <commit>, use the merge base
|
||||
of <commit> and HEAD. `git diff --merge-base A` is equivalent to
|
||||
`git diff $(git merge-base A HEAD)`.
|
||||
of <commit> and HEAD. `git diff --cached --merge-base A` is equivalent to
|
||||
`git diff --cached $(git merge-base A HEAD)`.
|
||||
|
||||
'git diff' [<options>] <commit> [--] [<path>...]::
|
||||
'git diff' [<options>] [--merge-base] <commit> [--] [<path>...]::
|
||||
|
||||
This form is to view the changes you have in your
|
||||
working tree relative to the named <commit>. You can
|
||||
use HEAD to compare it with the latest commit, or a
|
||||
branch name to compare with the tip of a different
|
||||
branch.
|
||||
+
|
||||
If --merge-base is given, instead of using <commit>, use the merge base
|
||||
of <commit> and HEAD. `git diff --merge-base A` is equivalent to
|
||||
`git diff $(git merge-base A HEAD)`.
|
||||
|
||||
'git diff' [<options>] [--merge-base] <commit> <commit> [--] [<path>...]::
|
||||
|
||||
|
@ -34,6 +34,14 @@ OPTIONS
|
||||
This is the default behaviour; the option is provided to
|
||||
override any configuration settings.
|
||||
|
||||
--rotate-to=<file>::
|
||||
Start showing the diff for the given path,
|
||||
the paths before it will move to end and output.
|
||||
|
||||
--skip-to=<file>::
|
||||
Start showing the diff for the given path, skipping all
|
||||
the paths before it.
|
||||
|
||||
-t <tool>::
|
||||
--tool=<tool>::
|
||||
Use the diff tool specified by <tool>. Valid values include
|
||||
|
@ -133,7 +133,7 @@ remember to run that, set `fetch.prune` globally, or
|
||||
linkgit:git-config[1].
|
||||
|
||||
Here's where things get tricky and more specific. The pruning feature
|
||||
doesn't actually care about branches, instead it'll prune local <->
|
||||
doesn't actually care about branches, instead it'll prune local <-->
|
||||
remote-references as a function of the refspec of the remote (see
|
||||
`<refspec>` and <<CRTB,CONFIGURED REMOTE-TRACKING BRANCHES>> above).
|
||||
|
||||
|
@ -260,11 +260,9 @@ contents:lines=N::
|
||||
The first `N` lines of the message.
|
||||
|
||||
Additionally, the trailers as interpreted by linkgit:git-interpret-trailers[1]
|
||||
are obtained as `trailers` (or by using the historical alias
|
||||
`contents:trailers`). Non-trailer lines from the trailer block can be omitted
|
||||
with `trailers:only`. Whitespace-continuations can be removed from trailers so
|
||||
that each trailer appears on a line by itself with its full content with
|
||||
`trailers:unfold`. Both can be used together as `trailers:unfold,only`.
|
||||
are obtained as `trailers[:options]` (or by using the historical alias
|
||||
`contents:trailers[:options]`). For valid [:option] values see `trailers`
|
||||
section of linkgit:git-log[1].
|
||||
|
||||
For sorting purposes, fields with numeric values sort in numeric order
|
||||
(`objectsize`, `authordate`, `committerdate`, `creatordate`, `taggerdate`).
|
||||
|
@ -36,11 +36,28 @@ SYNOPSIS
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
||||
Prepare each commit with its patch in
|
||||
one file per commit, formatted to resemble UNIX mailbox format.
|
||||
Prepare each non-merge commit with its "patch" in
|
||||
one "message" per commit, formatted to resemble a UNIX mailbox.
|
||||
The output of this command is convenient for e-mail submission or
|
||||
for use with 'git am'.
|
||||
|
||||
A "message" generated by the command consists of three parts:
|
||||
|
||||
* A brief metadata header that begins with `From <commit>`
|
||||
with a fixed `Mon Sep 17 00:00:00 2001` datestamp to help programs
|
||||
like "file(1)" to recognize that the file is an output from this
|
||||
command, fields that record the author identity, the author date,
|
||||
and the title of the change (taken from the first paragraph of the
|
||||
commit log message).
|
||||
|
||||
* The second and subsequent paragraphs of the commit log message.
|
||||
|
||||
* The "patch", which is the "diff -p --stat" output (see
|
||||
linkgit:git-diff[1]) between the commit and its parent.
|
||||
|
||||
The log message and the patch is separated by a line with a
|
||||
three-dash line.
|
||||
|
||||
There are two ways to specify which commits to operate on.
|
||||
|
||||
1. A single commit, <since>, specifies that the commits leading
|
||||
@ -221,6 +238,11 @@ populated with placeholder text.
|
||||
`--subject-prefix` option) has ` v<n>` appended to it. E.g.
|
||||
`--reroll-count=4` may produce `v4-0001-add-makefile.patch`
|
||||
file that has "Subject: [PATCH v4 1/20] Add makefile" in it.
|
||||
`<n>` does not have to be an integer (e.g. "--reroll-count=4.4",
|
||||
or "--reroll-count=4rev2" are allowed), but the downside of
|
||||
using such a reroll-count is that the range-diff/interdiff
|
||||
with the previous version does not state exactly which
|
||||
version the new interation is compared against.
|
||||
|
||||
--to=<email>::
|
||||
Add a `To:` header to the email headers. This is in addition
|
||||
@ -718,6 +740,14 @@ use it only when you know the recipient uses Git to apply your patch.
|
||||
$ git format-patch -3
|
||||
------------
|
||||
|
||||
CAVEATS
|
||||
-------
|
||||
|
||||
Note that `format-patch` will omit merge commits from the output, even
|
||||
if they are part of the requested range. A simple "patch" does not
|
||||
include enough information for the receiving end to reproduce the same
|
||||
merge commit.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkgit:git-am[1], linkgit:git-send-email[1]
|
||||
|
@ -129,14 +129,6 @@ using 'git commit-graph verify'. See linkgit:git-commit-graph[1].
|
||||
Extracted Diagnostics
|
||||
---------------------
|
||||
|
||||
expect dangling commits - potential heads - due to lack of head information::
|
||||
You haven't specified any nodes as heads so it won't be
|
||||
possible to differentiate between un-parented commits and
|
||||
root nodes.
|
||||
|
||||
missing sha1 directory '<dir>'::
|
||||
The directory holding the sha1 objects is missing.
|
||||
|
||||
unreachable <type> <object>::
|
||||
The <type> object <object>, isn't actually referred to directly
|
||||
or indirectly in any of the trees or commits seen. This can
|
||||
|
@ -117,12 +117,14 @@ NOTES
|
||||
'git gc' tries very hard not to delete objects that are referenced
|
||||
anywhere in your repository. In particular, it will keep not only
|
||||
objects referenced by your current set of branches and tags, but also
|
||||
objects referenced by the index, remote-tracking branches, notes saved
|
||||
by 'git notes' under refs/notes/, reflogs (which may reference commits
|
||||
in branches that were later amended or rewound), and anything else in
|
||||
the refs/* namespace. If you are expecting some objects to be deleted
|
||||
and they aren't, check all of those locations and decide whether it
|
||||
makes sense in your case to remove those references.
|
||||
objects referenced by the index, remote-tracking branches, reflogs
|
||||
(which may reference commits in branches that were later amended or
|
||||
rewound), and anything else in the refs/* namespace. Note that a note
|
||||
(of the kind created by 'git notes') attached to an object does not
|
||||
contribute in keeping the object alive. If you are expecting some
|
||||
objects to be deleted and they aren't, check all of those locations
|
||||
and decide whether it makes sense in your case to remove those
|
||||
references.
|
||||
|
||||
On the other hand, when 'git gc' runs concurrently with another process,
|
||||
there is a risk of it deleting an object that the other process is using
|
||||
|
@ -38,38 +38,6 @@ are lists of one or more search expressions separated by newline
|
||||
characters. An empty string as search expression matches all lines.
|
||||
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
||||
grep.lineNumber::
|
||||
If set to true, enable `-n` option by default.
|
||||
|
||||
grep.column::
|
||||
If set to true, enable the `--column` option by default.
|
||||
|
||||
grep.patternType::
|
||||
Set the default matching behavior. Using a value of 'basic', 'extended',
|
||||
'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`,
|
||||
`--fixed-strings`, or `--perl-regexp` option accordingly, while the
|
||||
value 'default' will return to the default matching behavior.
|
||||
|
||||
grep.extendedRegexp::
|
||||
If set to true, enable `--extended-regexp` option by default. This
|
||||
option is ignored when the `grep.patternType` option is set to a value
|
||||
other than 'default'.
|
||||
|
||||
grep.threads::
|
||||
Number of grep worker threads to use. If unset (or set to 0), Git will
|
||||
use as many threads as the number of logical cores available.
|
||||
|
||||
grep.fullName::
|
||||
If set to true, enable `--full-name` option by default.
|
||||
|
||||
grep.fallbackToNoIndex::
|
||||
If set to true, fall back to git grep --no-index if git grep
|
||||
is executed outside of a git repository. Defaults to false.
|
||||
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
--cached::
|
||||
@ -363,6 +331,38 @@ with multiple threads might perform slower than single threaded if `--textconv`
|
||||
is given and there're too many text conversions. So if you experience low
|
||||
performance in this case, it might be desirable to use `--threads=1`.
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
||||
grep.lineNumber::
|
||||
If set to true, enable `-n` option by default.
|
||||
|
||||
grep.column::
|
||||
If set to true, enable the `--column` option by default.
|
||||
|
||||
grep.patternType::
|
||||
Set the default matching behavior. Using a value of 'basic', 'extended',
|
||||
'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`,
|
||||
`--fixed-strings`, or `--perl-regexp` option accordingly, while the
|
||||
value 'default' will return to the default matching behavior.
|
||||
|
||||
grep.extendedRegexp::
|
||||
If set to true, enable `--extended-regexp` option by default. This
|
||||
option is ignored when the `grep.patternType` option is set to a value
|
||||
other than 'default'.
|
||||
|
||||
grep.threads::
|
||||
Number of grep worker threads to use. If unset (or set to 0), Git will
|
||||
use as many threads as the number of logical cores available.
|
||||
|
||||
grep.fullName::
|
||||
If set to true, enable `--full-name` option by default.
|
||||
|
||||
grep.fallbackToNoIndex::
|
||||
If set to true, fall back to git grep --no-index if git grep
|
||||
is executed outside of a git repository. Defaults to false.
|
||||
|
||||
|
||||
GIT
|
||||
---
|
||||
Part of the linkgit:git[1] suite
|
||||
|
@ -41,11 +41,17 @@ commit-id::
|
||||
<commit-id>['\t'<filename-as-in--w>]
|
||||
|
||||
--packfile=<hash>::
|
||||
Instead of a commit id on the command line (which is not expected in
|
||||
For internal use only. Instead of a commit id on the command
|
||||
line (which is not expected in
|
||||
this case), 'git http-fetch' fetches the packfile directly at the given
|
||||
URL and uses index-pack to generate corresponding .idx and .keep files.
|
||||
The hash is used to determine the name of the temporary file and is
|
||||
arbitrary. The output of index-pack is printed to stdout.
|
||||
arbitrary. The output of index-pack is printed to stdout. Requires
|
||||
--index-pack-args.
|
||||
|
||||
--index-pack-args=<args>::
|
||||
For internal use only. The command to run on the contents of the
|
||||
downloaded pack. Arguments are URL-encoded separated by spaces.
|
||||
|
||||
--recover::
|
||||
Verify that everything reachable from target is fetched. Used after
|
||||
|
@ -9,17 +9,18 @@ git-index-pack - Build pack index file for an existing packed archive
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git index-pack' [-v] [-o <index-file>] <pack-file>
|
||||
'git index-pack' [-v] [-o <index-file>] [--[no-]rev-index] <pack-file>
|
||||
'git index-pack' --stdin [--fix-thin] [--keep] [-v] [-o <index-file>]
|
||||
[<pack-file>]
|
||||
[--[no-]rev-index] [<pack-file>]
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
Reads a packed archive (.pack) from the specified file, and
|
||||
builds a pack index file (.idx) for it. The packed archive
|
||||
together with the pack index can then be placed in the
|
||||
objects/pack/ directory of a Git repository.
|
||||
builds a pack index file (.idx) for it. Optionally writes a
|
||||
reverse-index (.rev) for the specified pack. The packed
|
||||
archive together with the pack index can then be placed in
|
||||
the objects/pack/ directory of a Git repository.
|
||||
|
||||
|
||||
OPTIONS
|
||||
@ -35,6 +36,13 @@ OPTIONS
|
||||
fails if the name of packed archive does not end
|
||||
with .pack).
|
||||
|
||||
--[no-]rev-index::
|
||||
When this flag is provided, generate a reverse index
|
||||
(a `.rev` file) corresponding to the given pack. If
|
||||
`--verify` is given, ensure that the existing
|
||||
reverse index is correct. Takes precedence over
|
||||
`pack.writeReverseIndex`.
|
||||
|
||||
--stdin::
|
||||
When this flag is provided, the pack is read from stdin
|
||||
instead and a copy is then written to <pack-file>. If
|
||||
@ -78,7 +86,12 @@ OPTIONS
|
||||
Die if the pack contains broken links. For internal use only.
|
||||
|
||||
--fsck-objects::
|
||||
Die if the pack contains broken objects. For internal use only.
|
||||
For internal use only.
|
||||
+
|
||||
Die if the pack contains broken objects. If the pack contains a tree
|
||||
pointing to a .gitmodules blob that does not exist, prints the hash of
|
||||
that blob (for the caller to check) after the hash that goes into the
|
||||
name of the pack/idx file (see "Notes").
|
||||
|
||||
--threads=<n>::
|
||||
Specifies the number of threads to spawn when resolving
|
||||
|
@ -232,25 +232,38 @@ trailer.<token>.ifmissing::
|
||||
that option for trailers with the specified <token>.
|
||||
|
||||
trailer.<token>.command::
|
||||
This option can be used to specify a shell command that will
|
||||
be called to automatically add or modify a trailer with the
|
||||
specified <token>.
|
||||
This option behaves in the same way as 'trailer.<token>.cmd', except
|
||||
that it doesn't pass anything as argument to the specified command.
|
||||
Instead the first occurrence of substring $ARG is replaced by the
|
||||
value that would be passed as argument.
|
||||
+
|
||||
When this option is specified, the behavior is as if a special
|
||||
'<token>=<value>' argument were added at the beginning of the command
|
||||
line, where <value> is taken to be the standard output of the
|
||||
specified command with any leading and trailing whitespace trimmed
|
||||
off.
|
||||
The 'trailer.<token>.command' option has been deprecated in favor of
|
||||
'trailer.<token>.cmd' due to the fact that $ARG in the user's command is
|
||||
only replaced once and that the original way of replacing $ARG is not safe.
|
||||
+
|
||||
If the command contains the `$ARG` string, this string will be
|
||||
replaced with the <value> part of an existing trailer with the same
|
||||
<token>, if any, before the command is launched.
|
||||
When both 'trailer.<token>.cmd' and 'trailer.<token>.command' are given
|
||||
for the same <token>, 'trailer.<token>.cmd' is used and
|
||||
'trailer.<token>.command' is ignored.
|
||||
|
||||
trailer.<token>.cmd::
|
||||
This option can be used to specify a shell command that will be called:
|
||||
once to automatically add a trailer with the specified <token>, and then
|
||||
each time a '--trailer <token>=<value>' argument to modify the <value> of
|
||||
the trailer that this option would produce.
|
||||
+
|
||||
If some '<token>=<value>' arguments are also passed on the command
|
||||
line, when a 'trailer.<token>.command' is configured, the command will
|
||||
also be executed for each of these arguments. And the <value> part of
|
||||
these arguments, if any, will be used to replace the `$ARG` string in
|
||||
the command.
|
||||
When the specified command is first called to add a trailer
|
||||
with the specified <token>, the behavior is as if a special
|
||||
'--trailer <token>=<value>' argument was added at the beginning
|
||||
of the "git interpret-trailers" command, where <value>
|
||||
is taken to be the standard output of the command with any
|
||||
leading and trailing whitespace trimmed off.
|
||||
+
|
||||
If some '--trailer <token>=<value>' arguments are also passed
|
||||
on the command line, the command is called again once for each
|
||||
of these arguments with the same <token>. And the <value> part
|
||||
of these arguments, if any, will be passed to the command as its
|
||||
first argument. This way the command can produce a <value> computed
|
||||
from the <value> passed in the '--trailer <token>=<value>' argument.
|
||||
|
||||
EXAMPLES
|
||||
--------
|
||||
@ -333,6 +346,55 @@ subject
|
||||
Fix #42
|
||||
------------
|
||||
|
||||
* Configure a 'help' trailer with a cmd use a script `glog-find-author`
|
||||
which search specified author identity from git log in git repository
|
||||
and show how it works:
|
||||
+
|
||||
------------
|
||||
$ cat ~/bin/glog-find-author
|
||||
#!/bin/sh
|
||||
test -n "$1" && git log --author="$1" --pretty="%an <%ae>" -1 || true
|
||||
$ git config trailer.help.key "Helped-by: "
|
||||
$ git config trailer.help.ifExists "addIfDifferentNeighbor"
|
||||
$ git config trailer.help.cmd "~/bin/glog-find-author"
|
||||
$ git interpret-trailers --trailer="help:Junio" --trailer="help:Couder" <<EOF
|
||||
> subject
|
||||
>
|
||||
> message
|
||||
>
|
||||
> EOF
|
||||
subject
|
||||
|
||||
message
|
||||
|
||||
Helped-by: Junio C Hamano <gitster@pobox.com>
|
||||
Helped-by: Christian Couder <christian.couder@gmail.com>
|
||||
------------
|
||||
|
||||
* Configure a 'ref' trailer with a cmd use a script `glog-grep`
|
||||
to grep last relevant commit from git log in the git repository
|
||||
and show how it works:
|
||||
+
|
||||
------------
|
||||
$ cat ~/bin/glog-grep
|
||||
#!/bin/sh
|
||||
test -n "$1" && git log --grep "$1" --pretty=reference -1 || true
|
||||
$ git config trailer.ref.key "Reference-to: "
|
||||
$ git config trailer.ref.ifExists "replace"
|
||||
$ git config trailer.ref.cmd "~/bin/glog-grep"
|
||||
$ git interpret-trailers --trailer="ref:Add copyright notices." <<EOF
|
||||
> subject
|
||||
>
|
||||
> message
|
||||
>
|
||||
> EOF
|
||||
subject
|
||||
|
||||
message
|
||||
|
||||
Reference-to: 8bc9a0c769 (Add copyright notices., 2005-04-07)
|
||||
------------
|
||||
|
||||
* Configure a 'see' trailer with a command to show the subject of a
|
||||
commit that is related, and show how it works:
|
||||
+
|
||||
|
@ -39,7 +39,9 @@ OPTIONS
|
||||
full ref name (including prefix) will be printed. If 'auto' is
|
||||
specified, then if the output is going to a terminal, the ref names
|
||||
are shown as if 'short' were given, otherwise no ref names are
|
||||
shown. The default option is 'short'.
|
||||
shown. The option `--decorate` is short-hand for `--decorate=short`.
|
||||
Default to configuration value of `log.decorate` if configured,
|
||||
otherwise, `auto`.
|
||||
|
||||
--decorate-refs=<pattern>::
|
||||
--decorate-refs-exclude=<pattern>::
|
||||
@ -107,47 +109,15 @@ DIFF FORMATTING
|
||||
By default, `git log` does not generate any diff output. The options
|
||||
below can be used to show the changes made by each commit.
|
||||
|
||||
Note that unless one of `-c`, `--cc`, or `-m` is given, merge commits
|
||||
will never show a diff, even if a diff format like `--patch` is
|
||||
selected, nor will they match search options like `-S`. The exception is
|
||||
when `--first-parent` is in use, in which merges are treated like normal
|
||||
single-parent commits (this can be overridden by providing a
|
||||
combined-diff option or with `--no-diff-merges`).
|
||||
|
||||
-c::
|
||||
With this option, diff output for a merge commit
|
||||
shows the differences from each of the parents to the merge result
|
||||
simultaneously instead of showing pairwise diff between a parent
|
||||
and the result one at a time. Furthermore, it lists only files
|
||||
which were modified from all parents.
|
||||
|
||||
--cc::
|
||||
This flag implies the `-c` option and further compresses the
|
||||
patch output by omitting uninteresting hunks whose contents in
|
||||
the parents have only two variants and the merge result picks
|
||||
one of them without modification.
|
||||
|
||||
--combined-all-paths::
|
||||
This flag causes combined diffs (used for merge commits) to
|
||||
list the name of the file from all parents. It thus only has
|
||||
effect when -c or --cc are specified, and is likely only
|
||||
useful if filename changes are detected (i.e. when either
|
||||
rename or copy detection have been requested).
|
||||
|
||||
-m::
|
||||
This flag makes the merge commits show the full diff like
|
||||
regular commits; for each merge parent, a separate log entry
|
||||
and diff is generated. An exception is that only diff against
|
||||
the first parent is shown when `--first-parent` option is given;
|
||||
in that case, the output represents the changes the merge
|
||||
brought _into_ the then-current branch.
|
||||
|
||||
--diff-merges=off::
|
||||
--no-diff-merges::
|
||||
Disable output of diffs for merge commits (default). Useful to
|
||||
override `-m`, `-c`, or `--cc`.
|
||||
Note that unless one of `--diff-merges` variants (including short
|
||||
`-m`, `-c`, and `--cc` options) is explicitly given, merge commits
|
||||
will not show a diff, even if a diff format like `--patch` is
|
||||
selected, nor will they match search options like `-S`. The exception
|
||||
is when `--first-parent` is in use, in which case `first-parent` is
|
||||
the default format.
|
||||
|
||||
:git-log: 1
|
||||
:diff-merges-default: `off`
|
||||
include::diff-options.txt[]
|
||||
|
||||
include::diff-generate-patch.txt[]
|
||||
|
@ -13,6 +13,7 @@ SYNOPSIS
|
||||
(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
|
||||
(-[c|d|o|i|s|u|k|m])*
|
||||
[--eol]
|
||||
[--deduplicate]
|
||||
[-x <pattern>|--exclude=<pattern>]
|
||||
[-X <file>|--exclude-from=<file>]
|
||||
[--exclude-per-directory=<file>]
|
||||
@ -23,9 +24,8 @@ SYNOPSIS
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
This merges the file listing in the directory cache index with the
|
||||
actual working directory list, and shows different combinations of the
|
||||
two.
|
||||
This merges the file listing in the index with the actual working
|
||||
directory list, and shows different combinations of the two.
|
||||
|
||||
One or more of the options below may be used to determine the files
|
||||
shown:
|
||||
@ -81,6 +81,13 @@ OPTIONS
|
||||
\0 line termination on output and do not quote filenames.
|
||||
See OUTPUT below for more information.
|
||||
|
||||
--deduplicate::
|
||||
When only filenames are shown, suppress duplicates that may
|
||||
come from having multiple stages during a merge, or giving
|
||||
`--deleted` and `--modified` option at the same time.
|
||||
When any of the `-t`, `--unmerged`, or `--stage` option is
|
||||
in use, this option has no effect.
|
||||
|
||||
-x <pattern>::
|
||||
--exclude=<pattern>::
|
||||
Skip untracked files matching pattern.
|
||||
|
@ -9,7 +9,9 @@ git-mailinfo - Extracts patch and authorship from a single e-mail message
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n] [--[no-]scissors] <msg> <patch>
|
||||
'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n]
|
||||
[--[no-]scissors] [--quoted-cr=<action>]
|
||||
<msg> <patch>
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
@ -53,7 +55,7 @@ character.
|
||||
The commit log message, author name and author email are
|
||||
taken from the e-mail, and after minimally decoding MIME
|
||||
transfer encoding, re-coded in the charset specified by
|
||||
i18n.commitencoding (defaulting to UTF-8) by transliterating
|
||||
`i18n.commitEncoding` (defaulting to UTF-8) by transliterating
|
||||
them. This used to be optional but now it is the default.
|
||||
+
|
||||
Note that the patch is always used as-is without charset
|
||||
@ -61,7 +63,7 @@ conversion, even with this flag.
|
||||
|
||||
--encoding=<encoding>::
|
||||
Similar to -u. But when re-coding, the charset specified here is
|
||||
used instead of the one specified by i18n.commitencoding or UTF-8.
|
||||
used instead of the one specified by `i18n.commitEncoding` or UTF-8.
|
||||
|
||||
-n::
|
||||
Disable all charset re-coding of the metadata.
|
||||
@ -89,6 +91,23 @@ This can be enabled by default with the configuration option mailinfo.scissors.
|
||||
--no-scissors::
|
||||
Ignore scissors lines. Useful for overriding mailinfo.scissors settings.
|
||||
|
||||
--quoted-cr=<action>::
|
||||
Action when processes email messages sent with base64 or
|
||||
quoted-printable encoding, and the decoded lines end with a CRLF
|
||||
instead of a simple LF.
|
||||
+
|
||||
The valid actions are:
|
||||
+
|
||||
--
|
||||
* `nowarn`: Git will do nothing when such a CRLF is found.
|
||||
* `warn`: Git will issue a warning for each message if such a CRLF is
|
||||
found.
|
||||
* `strip`: Git will convert those CRLF to LF.
|
||||
--
|
||||
+
|
||||
The default action could be set by configuration option `mailinfo.quotedCR`.
|
||||
If no such configuration option has been set, `warn` will be used.
|
||||
|
||||
<msg>::
|
||||
The commit log message extracted from e-mail, usually
|
||||
except the title line which comes from e-mail Subject.
|
||||
|
@ -38,7 +38,7 @@ register::
|
||||
for running in the background without disrupting foreground
|
||||
processes.
|
||||
+
|
||||
The `register` subcomand will also set the `maintenance.strategy` config
|
||||
The `register` subcommand will also set the `maintenance.strategy` config
|
||||
value to `incremental`, if this value is not previously set. The
|
||||
`incremental` strategy uses the following schedule for each maintenance
|
||||
task:
|
||||
@ -92,10 +92,8 @@ commit-graph::
|
||||
prefetch::
|
||||
The `prefetch` task updates the object directory with the latest
|
||||
objects from all registered remotes. For each remote, a `git fetch`
|
||||
command is run. The refmap is custom to avoid updating local or remote
|
||||
branches (those in `refs/heads` or `refs/remotes`). Instead, the
|
||||
remote refs are stored in `refs/prefetch/<remote>/`. Also, tags are
|
||||
not updated.
|
||||
command is run. The configured refspec is modified to place all
|
||||
requested refs within `refs/prefetch/`. Also, tags are not updated.
|
||||
+
|
||||
This is done to avoid disrupting the remote-tracking branches. The end users
|
||||
expect these refs to stay unmoved unless they initiate a fetch. With prefetch
|
||||
@ -145,6 +143,12 @@ incremental-repack::
|
||||
which is a special case that attempts to repack all pack-files
|
||||
into a single pack-file.
|
||||
|
||||
pack-refs::
|
||||
The `pack-refs` task collects the loose reference files and
|
||||
collects them into a single file. This speeds up operations that
|
||||
need to iterate across many references. See linkgit:git-pack-refs[1]
|
||||
for more information.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
--auto::
|
||||
@ -218,6 +222,122 @@ Further, the `git gc` command should not be combined with
|
||||
but does not take the lock in the same way as `git maintenance run`. If
|
||||
possible, use `git maintenance run --task=gc` instead of `git gc`.
|
||||
|
||||
The following sections describe the mechanisms put in place to run
|
||||
background maintenance by `git maintenance start` and how to customize
|
||||
them.
|
||||
|
||||
BACKGROUND MAINTENANCE ON POSIX SYSTEMS
|
||||
---------------------------------------
|
||||
|
||||
The standard mechanism for scheduling background tasks on POSIX systems
|
||||
is cron(8). This tool executes commands based on a given schedule. The
|
||||
current list of user-scheduled tasks can be found by running `crontab -l`.
|
||||
The schedule written by `git maintenance start` is similar to this:
|
||||
|
||||
-----------------------------------------------------------------------
|
||||
# BEGIN GIT MAINTENANCE SCHEDULE
|
||||
# The following schedule was created by Git
|
||||
# Any edits made in this region might be
|
||||
# replaced in the future by a Git command.
|
||||
|
||||
0 1-23 * * * "/<path>/git" --exec-path="/<path>" for-each-repo --config=maintenance.repo maintenance run --schedule=hourly
|
||||
0 0 * * 1-6 "/<path>/git" --exec-path="/<path>" for-each-repo --config=maintenance.repo maintenance run --schedule=daily
|
||||
0 0 * * 0 "/<path>/git" --exec-path="/<path>" for-each-repo --config=maintenance.repo maintenance run --schedule=weekly
|
||||
|
||||
# END GIT MAINTENANCE SCHEDULE
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
The comments are used as a region to mark the schedule as written by Git.
|
||||
Any modifications within this region will be completely deleted by
|
||||
`git maintenance stop` or overwritten by `git maintenance start`.
|
||||
|
||||
The `crontab` entry specifies the full path of the `git` executable to
|
||||
ensure that the executed `git` command is the same one with which
|
||||
`git maintenance start` was issued independent of `PATH`. If the same user
|
||||
runs `git maintenance start` with multiple Git executables, then only the
|
||||
latest executable is used.
|
||||
|
||||
These commands use `git for-each-repo --config=maintenance.repo` to run
|
||||
`git maintenance run --schedule=<frequency>` on each repository listed in
|
||||
the multi-valued `maintenance.repo` config option. These are typically
|
||||
loaded from the user-specific global config. The `git maintenance` process
|
||||
then determines which maintenance tasks are configured to run on each
|
||||
repository with each `<frequency>` using the `maintenance.<task>.schedule`
|
||||
config options. These values are loaded from the global or repository
|
||||
config values.
|
||||
|
||||
If the config values are insufficient to achieve your desired background
|
||||
maintenance schedule, then you can create your own schedule. If you run
|
||||
`crontab -e`, then an editor will load with your user-specific `cron`
|
||||
schedule. In that editor, you can add your own schedule lines. You could
|
||||
start by adapting the default schedule listed earlier, or you could read
|
||||
the crontab(5) documentation for advanced scheduling techniques. Please
|
||||
do use the full path and `--exec-path` techniques from the default
|
||||
schedule to ensure you are executing the correct binaries in your
|
||||
schedule.
|
||||
|
||||
|
||||
BACKGROUND MAINTENANCE ON MACOS SYSTEMS
|
||||
---------------------------------------
|
||||
|
||||
While macOS technically supports `cron`, using `crontab -e` requires
|
||||
elevated privileges and the executed process does not have a full user
|
||||
context. Without a full user context, Git and its credential helpers
|
||||
cannot access stored credentials, so some maintenance tasks are not
|
||||
functional.
|
||||
|
||||
Instead, `git maintenance start` interacts with the `launchctl` tool,
|
||||
which is the recommended way to schedule timed jobs in macOS. Scheduling
|
||||
maintenance through `git maintenance (start|stop)` requires some
|
||||
`launchctl` features available only in macOS 10.11 or later.
|
||||
|
||||
Your user-specific scheduled tasks are stored as XML-formatted `.plist`
|
||||
files in `~/Library/LaunchAgents/`. You can see the currently-registered
|
||||
tasks using the following command:
|
||||
|
||||
-----------------------------------------------------------------------
|
||||
$ ls ~/Library/LaunchAgents/org.git-scm.git*
|
||||
org.git-scm.git.daily.plist
|
||||
org.git-scm.git.hourly.plist
|
||||
org.git-scm.git.weekly.plist
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
One task is registered for each `--schedule=<frequency>` option. To
|
||||
inspect how the XML format describes each schedule, open one of these
|
||||
`.plist` files in an editor and inspect the `<array>` element following
|
||||
the `<key>StartCalendarInterval</key>` element.
|
||||
|
||||
`git maintenance start` will overwrite these files and register the
|
||||
tasks again with `launchctl`, so any customizations should be done by
|
||||
creating your own `.plist` files with distinct names. Similarly, the
|
||||
`git maintenance stop` command will unregister the tasks with `launchctl`
|
||||
and delete the `.plist` files.
|
||||
|
||||
To create more advanced customizations to your background tasks, see
|
||||
launchctl.plist(5) for more information.
|
||||
|
||||
|
||||
BACKGROUND MAINTENANCE ON WINDOWS SYSTEMS
|
||||
-----------------------------------------
|
||||
|
||||
Windows does not support `cron` and instead has its own system for
|
||||
scheduling background tasks. The `git maintenance start` command uses
|
||||
the `schtasks` command to submit tasks to this system. You can inspect
|
||||
all background tasks using the Task Scheduler application. The tasks
|
||||
added by Git have names of the form `Git Maintenance (<frequency>)`.
|
||||
The Task Scheduler GUI has ways to inspect these tasks, but you can also
|
||||
export the tasks to XML files and view the details there.
|
||||
|
||||
Note that since Git is a console application, these background tasks
|
||||
create a console window visible to the current user. This can be changed
|
||||
manually by selecting the "Run whether user is logged in or not" option
|
||||
in Task Scheduler. This change requires a password input, which is why
|
||||
`git maintenance start` does not select it by default.
|
||||
|
||||
If you want to customize the background tasks, please rename the tasks
|
||||
so future calls to `git maintenance (start|stop)` do not overwrite your
|
||||
custom tasks.
|
||||
|
||||
|
||||
GIT
|
||||
---
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user