Compare commits
3022 Commits
v2.33.0-rc
...
v2.36.2
Author | SHA1 | Date | |
---|---|---|---|
fd59c5bdee | |||
8f8eea8c3a | |||
359da658ae | |||
aef3d5948c | |||
f2eed22852 | |||
378eaded1a | |||
80c525c4ac | |||
eebfde3f21 | |||
656d9a24f6 | |||
fc0c773028 | |||
5b1c746c35 | |||
2f8809f9a1 | |||
88b7be68a4 | |||
3b0bf27049 | |||
b779214eaf | |||
6b11e3d52e | |||
dc8c8deaa6 | |||
d2b11e05e0 | |||
67c305f722 | |||
363d54ff80 | |||
d777ef9bef | |||
ac8f6b6608 | |||
a5a52739e9 | |||
080b062071 | |||
f02e23405f | |||
9d1304155b | |||
c47b89cde6 | |||
b8117d2c08 | |||
79d1e6d407 | |||
596838d2c5 | |||
05e280c0a6 | |||
2acf4cf001 | |||
98cdb61cab | |||
a6a243e94a | |||
b9063afda1 | |||
ae9abbb63e | |||
5f1a3fec8c | |||
f15e00b463 | |||
49af448197 | |||
d1c9195116 | |||
cde6b9b78d | |||
7c898554d7 | |||
4627c67fa6 | |||
29d8e21d6e | |||
58407e041e | |||
6a61661967 | |||
b014cee8de | |||
1fbfd96f50 | |||
e54793a95a | |||
565442c358 | |||
c038dd6fdb | |||
676cead455 | |||
09a2302c70 | |||
8da1481bdc | |||
ee12682367 | |||
8e5c46e315 | |||
899df5f690 | |||
08bdd3a185 | |||
6dfadc8981 | |||
d1c25272f5 | |||
91f8f7e46f | |||
5cdb38458e | |||
4f1ccef87c | |||
f8781bfda3 | |||
11f9e8de3d | |||
b56166ca57 | |||
eafcc6de52 | |||
45a14f578e | |||
3506cae04f | |||
41c64ae0e7 | |||
9e5ebe9668 | |||
6cd33dceed | |||
b908065ea2 | |||
db4361bb29 | |||
9b23d2c7b8 | |||
1208041f05 | |||
ac87f9697f | |||
aac04e07ae | |||
9c539d1027 | |||
846a29afb0 | |||
c616d188aa | |||
cb6da3213e | |||
4027e30c53 | |||
b32632c327 | |||
4ac22f8cc0 | |||
40f35416c1 | |||
b3717a8943 | |||
2a7f398a6e | |||
dd6cf19403 | |||
c9f01d5f5f | |||
43159864b6 | |||
255ede9980 | |||
26ff9be6e7 | |||
347cc1b11d | |||
c6da34a610 | |||
1ac7422e39 | |||
d516b2db0a | |||
2f0dde7852 | |||
1f65dd6ae6 | |||
1530434434 | |||
09f66d65f8 | |||
17083c79ae | |||
0f85c4a30b | |||
bb50ec3cc3 | |||
e47363e5a8 | |||
cdfc63f714 | |||
783c5f4bc3 | |||
2731109c91 | |||
61de00a321 | |||
11cfe55261 | |||
33159949d2 | |||
f1b50ec6f8 | |||
af15f84da7 | |||
067109a5e7 | |||
dfbdf52df5 | |||
6e0a35803f | |||
48fd05399b | |||
ab1f2765f7 | |||
e7109d5c7c | |||
c42977afe0 | |||
6d340dfaef | |||
acd34fd5f6 | |||
00e5af3f24 | |||
ca355e3e33 | |||
bf23fe5c37 | |||
473fa2df08 | |||
07135d6be7 | |||
b2a7c2cfcd | |||
77da6db57f | |||
5e65dac9c8 | |||
5da9560ebc | |||
22ac4887f4 | |||
f3ea4bed2a | |||
07330a41d6 | |||
95acb13a55 | |||
327933fbbc | |||
0f0303a479 | |||
f2a2876f5a | |||
8af0699b7a | |||
2e37594797 | |||
5b52d9f15e | |||
350296cc78 | |||
84792322ed | |||
3117f0f9f7 | |||
66593217ec | |||
6b49afdc70 | |||
faa21c10d4 | |||
7c6d8ee8fa | |||
77ceb11342 | |||
909d5b646e | |||
439c1e6d5d | |||
ba2452b247 | |||
0f5e885173 | |||
1b54f5b89a | |||
fe496dc5b9 | |||
da95e25656 | |||
98f6a3a353 | |||
27dd460799 | |||
8e6e14fcea | |||
259ec8f5b9 | |||
cf0e875cd8 | |||
e8926670d4 | |||
3928e902e3 | |||
1041d58b4d | |||
3ff8cbfe8a | |||
e4921d877a | |||
6696601241 | |||
1f888282e2 | |||
dda31145d7 | |||
d97eb302ea | |||
6563706568 | |||
4b6846d9dc | |||
53747016a6 | |||
a5bf611cc4 | |||
2ea7e40c53 | |||
d723492127 | |||
83791bc52b | |||
6d51217467 | |||
cb3b3974b3 | |||
5391e94813 | |||
c4e707f858 | |||
f12f3b9807 | |||
ac59c742de | |||
cfbda6ba6b | |||
75388bf5b4 | |||
9a4987677d | |||
e5ec440c98 | |||
805e0a6808 | |||
f818536749 | |||
5fe35fcc79 | |||
d62966735d | |||
3d8046a820 | |||
2e2c0be51e | |||
b7f9130a06 | |||
840344db75 | |||
33665d98e6 | |||
4963d3e41f | |||
7390f05a3c | |||
011b775727 | |||
3c7bab06e1 | |||
869a0eb4eb | |||
4dfd0925cb | |||
1836836593 | |||
5cb28270a1 | |||
abf474a5dd | |||
dd9ff30dff | |||
6e1a8952e9 | |||
eb804cd405 | |||
a3dfe97f41 | |||
26b9f34ab3 | |||
b05880d357 | |||
50c725d6b6 | |||
ad2b54e3e8 | |||
86f7433f97 | |||
8aa0209701 | |||
369f0f54ff | |||
08894d3349 | |||
a00cdff81a | |||
148405fb27 | |||
dd77cf61a1 | |||
518a522f40 | |||
65723b305a | |||
5ff01b1f1e | |||
1448edfb51 | |||
bec486b9c1 | |||
aeef767a41 | |||
0ae7a1d9ab | |||
c284e27ba7 | |||
9dcba0ba08 | |||
f67df2556f | |||
62c7367133 | |||
abc9dbc0c1 | |||
16d9d6175b | |||
3248486920 | |||
9c307e8afd | |||
1e0ea5c431 | |||
d2bd862e7a | |||
974c1b3987 | |||
16dcec218b | |||
f1486203f5 | |||
bbfbcd25b3 | |||
5891c76cd0 | |||
53ef17d3ee | |||
1f480d5127 | |||
4d0b43aa76 | |||
93fbff09eb | |||
87ed4fc046 | |||
303b876f76 | |||
9bcd7a8eca | |||
201b0c7af6 | |||
44de39c45c | |||
6a2381a3e5 | |||
cb95038137 | |||
fdcad5a53e | |||
fbc15b13f7 | |||
e3c3675801 | |||
7cff6765fe | |||
2efc9b84e5 | |||
45bf76284b | |||
a68dfadae5 | |||
361c2566c0 | |||
1f390f2ad5 | |||
889860e1ad | |||
83510335c6 | |||
8faa322315 | |||
bfce3e7b92 | |||
ecb939a9ce | |||
7f7d1ad3e0 | |||
d674bf5570 | |||
4eb66787b0 | |||
94cb657f22 | |||
3ece3cb865 | |||
dc2588b2ba | |||
7649bfbaa2 | |||
8ba221e245 | |||
017303eb48 | |||
831ee253b7 | |||
80f6de4f5b | |||
cc91044256 | |||
094b5409ea | |||
51d2d67790 | |||
0ec7c23cdc | |||
4d9dc2c57a | |||
4369e3a1a3 | |||
9c4d58ff2c | |||
0f88783592 | |||
cab851c2f8 | |||
455923e0a1 | |||
22184af2cb | |||
e81517155e | |||
315f22c853 | |||
f6b224d5eb | |||
87af0ddf5f | |||
889f78383e | |||
132ceda40f | |||
26f6d4d5a0 | |||
82e69b0cb5 | |||
4e4566f67e | |||
a53343e0fd | |||
f01e51a7cf | |||
bc3838b310 | |||
214919b4f6 | |||
7391ecd338 | |||
b6763af74b | |||
964a856cbe | |||
05b8b82542 | |||
8959555cee | |||
bdc77d1d68 | |||
bdff97a3f6 | |||
77ab58c091 | |||
a34393f5f8 | |||
cbe485298b | |||
1e91d3faf6 | |||
d3ab1a5fcf | |||
5f9b64a6c2 | |||
03df6cb833 | |||
2a69ff09d5 | |||
f6db603c7a | |||
c39176b160 | |||
66865d12a0 | |||
5b8754043c | |||
ca40893a41 | |||
501036492b | |||
e2f8acb6a0 | |||
32bff617c6 | |||
99430aa12c | |||
bfc763df77 | |||
c3a9cecc7f | |||
77e56d55ba | |||
b59ec03cb5 | |||
c36c62859a | |||
bef805b7d8 | |||
60a8a6bf6c | |||
d7ef03681f | |||
f818f7f725 | |||
003cdf8882 | |||
ee32abda28 | |||
94945322ba | |||
62e2486b61 | |||
7da7f63cf9 | |||
2a9a5862e5 | |||
6e7ad1e4c2 | |||
898225ba04 | |||
74cc1aa55f | |||
38bbb9e990 | |||
7431379a9c | |||
ea05fd5fbf | |||
0b01c0a814 | |||
a54cc523ad | |||
a2fc9c3c40 | |||
47c52b2dad | |||
190f9bf62a | |||
430883a70c | |||
8d1ae40bae | |||
6969ac64bf | |||
47e0380289 | |||
5b9c98b491 | |||
5fff35d880 | |||
b90d9f7632 | |||
f3875ab115 | |||
b3c5f5cb04 | |||
75df9df0f8 | |||
c9911c9358 | |||
49fd5b99a5 | |||
55b3f12cb5 | |||
3c3558f095 | |||
d23e51a23e | |||
0f584debc7 | |||
6606d99bae | |||
e4938ce3cc | |||
02af15dec5 | |||
ab3892e48f | |||
5327d8982a | |||
841fd28ce2 | |||
bc22d845c4 | |||
0099792400 | |||
b9f5d0358d | |||
f4976ef739 | |||
eb54a3391b | |||
4b8b0f6fa2 | |||
d492abb0ae | |||
9396251b37 | |||
fd56fba97f | |||
e86ec71d20 | |||
a2565c48e4 | |||
64a6151da7 | |||
aa3e9e61c1 | |||
b896f729e2 | |||
ccafbbfb4e | |||
4eb845ac0a | |||
386f806c7d | |||
21b839e606 | |||
bde1e3e80a | |||
8b44e05abf | |||
f62106d750 | |||
851d2f0ab1 | |||
12e3b084de | |||
4fcea603c7 | |||
07b04ebe86 | |||
7cbbb77173 | |||
5775da0ced | |||
c614beb933 | |||
2e8ea40fe3 | |||
57be9c6dee | |||
09188ed930 | |||
eed36fce38 | |||
9b6d1fc48a | |||
ba95e96d4c | |||
844a8ad4f8 | |||
020406eaa5 | |||
abf38abec2 | |||
19d3f228c8 | |||
544d93bc3b | |||
32f3ac26e0 | |||
baedc59543 | |||
1a4874565f | |||
1f3c5f39e0 | |||
69a3b75fa6 | |||
4763ccd7f4 | |||
d169d51504 | |||
47be28e51e | |||
82386b4496 | |||
86fdd94d72 | |||
4f39eb031a | |||
f18b512bbb | |||
c4ea513f4a | |||
105c6f14ad | |||
4f33a6345f | |||
f0d2f84919 | |||
3e0370a8d2 | |||
09d4a79eff | |||
7940941de1 | |||
ffaa137f64 | |||
4a4c3f9b63 | |||
1f52cdfacb | |||
a262585d81 | |||
943fd02769 | |||
5370b91f3f | |||
73bc90d7e1 | |||
6e1e0c9959 | |||
1e5dd3a111 | |||
7c2f8cc58c | |||
d1d1572e75 | |||
6e94bd64f3 | |||
f3117dfdd1 | |||
a6ecc256c3 | |||
c419562860 | |||
e19b319950 | |||
72aae6d601 | |||
cf10c5b4cf | |||
5b911a29ff | |||
b6d775dd38 | |||
53ce7ccff1 | |||
8127a2b1f5 | |||
1ff543acd0 | |||
5476bdf0e8 | |||
d239ef1cba | |||
277ce7961d | |||
a182f69d5f | |||
c4d1d52631 | |||
a8cc594333 | |||
9f6e63b966 | |||
99d60545f8 | |||
6f69325258 | |||
6dbf4b8172 | |||
c2162907e9 | |||
7a4e06c42a | |||
11da0a5580 | |||
061fd5727d | |||
20d34c07ea | |||
283e4e7cd3 | |||
6d8d81ec36 | |||
a281069e77 | |||
6878ea6f14 | |||
ae59346f09 | |||
aae90a156d | |||
50e0dd8fee | |||
e828747001 | |||
967176465a | |||
b6c596fd01 | |||
c9d2562493 | |||
104744f91d | |||
97cb977c82 | |||
29a5e9e1ff | |||
3ce52cba5b | |||
5312a850b8 | |||
1012a5cbc3 | |||
ed9c84853e | |||
a77c3fcb5e | |||
e441966596 | |||
1a0b78c953 | |||
f7bdb32918 | |||
aca8568e2c | |||
759f340738 | |||
2d102c2bca | |||
4998e93fa6 | |||
ef3fe21448 | |||
51a94d8ffe | |||
4a0479086a | |||
8f79015111 | |||
0f0d118c65 | |||
bf67dd8d9a | |||
b07fa8f1b2 | |||
a41e8e7467 | |||
a18d66cefb | |||
e69fe2e460 | |||
f2bcc69e7e | |||
131b94a10a | |||
b0b70d54c4 | |||
fa47dd6445 | |||
a075e79d2c | |||
046188cc65 | |||
5445124fad | |||
56710a7ae0 | |||
c6dddb34b5 | |||
de004e848a | |||
63a36017fe | |||
0b6d0bc924 | |||
a9fda017f4 | |||
fd15f8a5fa | |||
dad9cd7d51 | |||
f4c6a526a1 | |||
dafc2deade | |||
8df786d298 | |||
a36b575aab | |||
7b20af6a06 | |||
758b4d2be8 | |||
7d3d226e70 | |||
76bccbcfe2 | |||
ecc7c8841d | |||
624a93507e | |||
8d2eaf649a | |||
9ba83ebfda | |||
090a3085bc | |||
f27c170f64 | |||
ab81047a6c | |||
7497039241 | |||
2c66a7c8ce | |||
14bf38cfcf | |||
cc89331ddc | |||
2c521b0e49 | |||
287fd17e3a | |||
c8d67b9a68 | |||
3b0199d4c3 | |||
75979d9460 | |||
17925e0602 | |||
c78c7a959c | |||
0a7b38707d | |||
1553f5e76c | |||
cd475b3b03 | |||
8e55634b47 | |||
4de656263a | |||
34363403a2 | |||
71f26798f2 | |||
b9638d7286 | |||
9dbf20e7f6 | |||
66c1a56870 | |||
317956d912 | |||
37482b4080 | |||
a67d178be4 | |||
2587df669b | |||
808213ba36 | |||
6aea6baeb3 | |||
2bbb28a3ee | |||
44439c1c58 | |||
0ff7b4f976 | |||
0f156dbb04 | |||
ee213de22d | |||
cdcaaec9a6 | |||
73182b2d84 | |||
c80d226a04 | |||
b04cdea46c | |||
63e05f9056 | |||
bbea0ddeb9 | |||
715d08a9e5 | |||
0fd097b9a0 | |||
b3db182886 | |||
5c4f3804a7 | |||
362f869ff2 | |||
80f7f618b6 | |||
0a01df08c0 | |||
294f296292 | |||
5b84280c65 | |||
2e65591ed6 | |||
d21d5ddfe6 | |||
a47fcfe871 | |||
6249ce2d1b | |||
268e6b8d4d | |||
c829f5f857 | |||
b3454e2df2 | |||
a9f6274fc0 | |||
2dd75f123d | |||
4fbedd4dc0 | |||
0cb9872eab | |||
4996e0b015 | |||
98593057d0 | |||
518f7059a8 | |||
ceaf037f61 | |||
0cf5fbc2e4 | |||
dab1b7905d | |||
66633f25c6 | |||
008adee208 | |||
8813596531 | |||
ebb866adae | |||
68fd3b35f7 | |||
fb5e8587a0 | |||
c69e455bbc | |||
290eada0ac | |||
cc143f12a7 | |||
456296b5d1 | |||
f01f948282 | |||
9e1f22c8ad | |||
93de1b6999 | |||
1ce590133b | |||
503cddacb6 | |||
5e8068b74d | |||
d7f817d376 | |||
6fb427abbb | |||
bf7eed75b9 | |||
cd87ce7d0d | |||
4bf5cdab8e | |||
73a4c188b7 | |||
3c443a02a9 | |||
b4007fcc6f | |||
45c2fcc2a0 | |||
1407659110 | |||
eff5832ba1 | |||
fa48de62ac | |||
ac618c418e | |||
2c6860211f | |||
f7da756566 | |||
24d7ce383a | |||
ae5d569bb2 | |||
07d85380b2 | |||
f13a146c81 | |||
7b215826f3 | |||
a777d4c750 | |||
6036be1458 | |||
599701441e | |||
c57bf8ce9e | |||
23f832e29e | |||
ace5ac533a | |||
8639705365 | |||
92d92345ce | |||
56a29d2c97 | |||
b7ba8587c3 | |||
81afc79412 | |||
8d60e9d201 | |||
8dd7c4739b | |||
4ce504360b | |||
bb8b5e9a90 | |||
d526b4dbe1 | |||
f748012e01 | |||
4454015767 | |||
bbd837f040 | |||
e6ebfd0e8c | |||
9a1d16989f | |||
122c78dcb4 | |||
c5973cb98f | |||
9b7e531f94 | |||
18636afdce | |||
09320a8af1 | |||
5cc9522b15 | |||
7455e33cba | |||
991b4d47f0 | |||
bcd020f88e | |||
867b520301 | |||
e8d56ca863 | |||
440c705ea6 | |||
4cf5d53b62 | |||
ac4e58cab9 | |||
a2c75526d2 | |||
e2ac9141e6 | |||
037dbe8ed7 | |||
6cfe518967 | |||
a4ec347888 | |||
ff6f1695a3 | |||
2f45f3e2bc | |||
708cbef33a | |||
d077db1df0 | |||
75ff34bcf7 | |||
0ac270cf7c | |||
4a3d86e1bb | |||
97169fc361 | |||
26b8946421 | |||
583bc41923 | |||
b3a804663c | |||
4f2ba2d06a | |||
62091b4c87 | |||
2983cec0f2 | |||
efbade0660 | |||
2a0cafd464 | |||
45fe28c951 | |||
834625bd6f | |||
b9f791aee6 | |||
9a160990ef | |||
70ff41ffcf | |||
00e38ba6d8 | |||
f2cb46a6b3 | |||
90b7153806 | |||
34230514b8 | |||
dd77ff8181 | |||
9d2f9a6188 | |||
6ee36364eb | |||
244c27242f | |||
43ad3af380 | |||
4a37b80e88 | |||
61f883965f | |||
9df0fc3d57 | |||
974c919d36 | |||
2bacb83466 | |||
f184289832 | |||
88c7b4c3c8 | |||
f6c71f81f9 | |||
04bf052eef | |||
ae807d778f | |||
321ee43628 | |||
72365bb499 | |||
b8db6ed826 | |||
9725c8dda2 | |||
a5c0ed3d83 | |||
ccb1fccc21 | |||
ff37a60c36 | |||
77e3f931ef | |||
d271892fbc | |||
332acc248d | |||
6a5678f257 | |||
b80121027d | |||
acd920a0ee | |||
c73d46b3a8 | |||
9210a00d65 | |||
b855f5045e | |||
83760938bd | |||
03bdcfcc78 | |||
c46452eb98 | |||
e66e9906e6 | |||
d073bdc6a0 | |||
8db2f665e1 | |||
d4fe066e4b | |||
3d3c23b3a7 | |||
087c745833 | |||
dccf6c16f1 | |||
b18aaaa5e9 | |||
6fd1cc8f98 | |||
bcdff626ee | |||
8c2d8d04f0 | |||
2df5387ed0 | |||
b8403129d3 | |||
f05da2b48b | |||
2b9c120970 | |||
c7a42644b0 | |||
1b82b936e3 | |||
d991df4bf6 | |||
bb754fe0b8 | |||
c70b5e7187 | |||
c70bc338e9 | |||
bd75856ef7 | |||
d9976b1845 | |||
472a219f8d | |||
ec4f70e647 | |||
e704a4486e | |||
2981dbea78 | |||
13ce8f9f14 | |||
87bfbd52e2 | |||
e1c192d387 | |||
eb57277ba3 | |||
48803821b1 | |||
c5f5c5082f | |||
fd6d9bec14 | |||
87ad07d735 | |||
059fda1902 | |||
3ce1138272 | |||
53255916b7 | |||
7316dc5f6f | |||
fe18733927 | |||
615a84ad78 | |||
5c11c0d52c | |||
f36d4f8316 | |||
d17294a05e | |||
38062e73e0 | |||
ee52b35e50 | |||
1b4d9b4512 | |||
008028a910 | |||
66775d2109 | |||
4bb003d539 | |||
d0bb19cbf7 | |||
391d85d78d | |||
8b9c425629 | |||
492261a6de | |||
7a9ae6d0d9 | |||
3d7e039117 | |||
8af16e2792 | |||
9164d97a63 | |||
959d670d1a | |||
1a8aea857e | |||
a699367bb8 | |||
0a2bfccb9c | |||
679e3693ab | |||
961b130d20 | |||
b3118a56f9 | |||
74900a6b35 | |||
accf1eb1d0 | |||
1ccad6a1f1 | |||
a02014bb4c | |||
bbfb1c243d | |||
791afae292 | |||
587c3d0da6 | |||
8266e0c029 | |||
9325285df4 | |||
45d0212a71 | |||
d9f88dd8bb | |||
59d9442f28 | |||
cd26cd6c7c | |||
ddea5719fa | |||
74f3390dde | |||
757e75c81e | |||
56fa5ac39a | |||
0dec322d31 | |||
0d83d8240d | |||
20323d104e | |||
95433eeed9 | |||
6054d1aac3 | |||
a28d094ac2 | |||
24dbdab50d | |||
35f6967161 | |||
7b90ab467a | |||
db757e8b8d | |||
714edc620c | |||
a9a136c232 | |||
a68c5b9eba | |||
6798b08e84 | |||
5407764069 | |||
6e0a2ca027 | |||
3f3e76082b | |||
bc0893cf3b | |||
e89f151db1 | |||
9158a3564a | |||
eaf0e83009 | |||
53af25e47c | |||
5e00514745 | |||
c9e04d905e | |||
09e0be130d | |||
5d01301f2b | |||
90fb70e458 | |||
4c53a8c20f | |||
f120b65cd4 | |||
2ae8eb5d71 | |||
2826ffad8c | |||
0f03f04c5c | |||
75408ca949 | |||
4d4d4eaa7b | |||
d843e319f8 | |||
e9b272e4c1 | |||
deeaf5ee07 | |||
5d4dc38bfd | |||
6de07229ac | |||
cdba0295b0 | |||
607817a3c8 | |||
fa1101afb6 | |||
3a73c1dfaf | |||
d2ef3cb7e2 | |||
851b3d7671 | |||
ba5e8a0eb8 | |||
667a560be7 | |||
6780e68040 | |||
8d56136d03 | |||
f8b60cf99b | |||
7f514b7a5e | |||
a80f0f91b1 | |||
791170fa2b | |||
f0ed59afcc | |||
90a8ea47d8 | |||
09a77999e7 | |||
95e8383bac | |||
61fd31a179 | |||
b23dac905b | |||
7747e12d71 | |||
cbac0076ef | |||
7838d9c2a9 | |||
ce14de03db | |||
09444e74e3 | |||
38c541ce94 | |||
cd1528ef8e | |||
7700ab087b | |||
6ae8086161 | |||
ee464c4e37 | |||
b7de153bd9 | |||
1526d0fcfd | |||
d6a9f5ea8e | |||
1946d45844 | |||
4840002a5f | |||
ab2fba0868 | |||
69f4c23009 | |||
bd55eee04b | |||
ae42fa4c03 | |||
ff5b7913f0 | |||
dccea605b6 | |||
07564773c2 | |||
e38bcc66d8 | |||
89bece5c8c | |||
c6e19e47a6 | |||
7ea759cf9b | |||
451b66c533 | |||
ac873c2bff | |||
ae103c37d3 | |||
9e2b35d764 | |||
0fff4ea346 | |||
519947b69a | |||
6046f7a91c | |||
a59b8dd94f | |||
87953304da | |||
7f44842ac1 | |||
b3d4896aad | |||
297ca895a2 | |||
de4eaae63a | |||
01033de49f | |||
66c0dabab5 | |||
9391b88dab | |||
c983374035 | |||
a94b94506b | |||
049cdbb059 | |||
6322511148 | |||
fb222079d3 | |||
33e9224320 | |||
b20aab5017 | |||
f5f6a6cd47 | |||
f7445865f2 | |||
27e27ee224 | |||
24d4d38c0b | |||
32d9c0ed1e | |||
6327f0efed | |||
944d808e42 | |||
518e15db74 | |||
159af2a97f | |||
ea0fca8d2a | |||
7ff31e1c72 | |||
50b2d72e11 | |||
e2724c1ed1 | |||
48af1fdee3 | |||
80dabf99ee | |||
0f8f20f222 | |||
ba5bb8152c | |||
8efa2acc2e | |||
80c2e9657f | |||
386c076a86 | |||
135a12bc14 | |||
bec587d4c1 | |||
af4e5f569b | |||
0330edb239 | |||
15f002812f | |||
399b198489 | |||
ed69e11b89 | |||
2b95d94b05 | |||
b56bd95bbc | |||
9ae39fef7f | |||
47efda967c | |||
05cd988dce | |||
4ed7dfa713 | |||
c11f95010c | |||
2ed1b64ebd | |||
ffad994138 | |||
2ce8254362 | |||
958fbc74e3 | |||
fbe73f61cb | |||
69840cc0f7 | |||
6bcc4e2c7d | |||
ee27abd30d | |||
fe7f7ad36c | |||
90999dd686 | |||
ffb9f29809 | |||
c8464a3df9 | |||
df3c41adeb | |||
36b65715a4 | |||
9a329bdb49 | |||
31e3912369 | |||
d79d299352 | |||
9023535bd3 | |||
af6a51875a | |||
26b5d6b0e5 | |||
b3df8c982a | |||
3013d98d7a | |||
48609de3bf | |||
b9ca5e2657 | |||
c35e9f5ecd | |||
e015d4d961 | |||
35682ada44 | |||
88078f543b | |||
b553ef6749 | |||
1e9e10e048 | |||
1624333ec1 | |||
bb01b26dec | |||
22d2f70e85 | |||
f2b255141b | |||
5906910794 | |||
cac15b3fb4 | |||
65387fd5eb | |||
14a38adf53 | |||
1ffcbaa1a5 | |||
12f82b0dd7 | |||
453cef7455 | |||
83ca08298e | |||
2a72807f6d | |||
c9c082850d | |||
4e2e2a4ffe | |||
a4510f8106 | |||
cde28af37b | |||
68d1da41c4 | |||
a5c97b0164 | |||
e1e1de0c6d | |||
0517f591ca | |||
9d505b7b49 | |||
68d924e1de | |||
7008ddc645 | |||
d16632f694 | |||
8c591dbfce | |||
ab961513c4 | |||
5fb249021c | |||
83dc443439 | |||
cb57f25021 | |||
4b1fd48874 | |||
38ad274f94 | |||
05b345af64 | |||
f91e43e2cd | |||
59b1ff19f0 | |||
79aed79241 | |||
33d7bdd645 | |||
c39fc06b99 | |||
90d242d36e | |||
6e22345591 | |||
27a70fa044 | |||
c17de5a505 | |||
2c5410480e | |||
def8c6a05d | |||
9b6eda0785 | |||
c0450ca098 | |||
0669bdf4eb | |||
4b51386bbf | |||
bc61dbac77 | |||
78e696c9dd | |||
626f2cabe6 | |||
8ab404ea04 | |||
077e120a1e | |||
114d64b783 | |||
43f196cec2 | |||
01ea04f76e | |||
3c0e417827 | |||
b48c69c3c8 | |||
9dbb375f94 | |||
be69d35e48 | |||
321f7f4fa4 | |||
98ab07ace5 | |||
b6f538f296 | |||
66f6c18e5b | |||
09481fec21 | |||
97d6fb5a1f | |||
a2585719b3 | |||
34ae3b7071 | |||
4a9b204920 | |||
b80741e5b9 | |||
95ba86a203 | |||
306f445ed1 | |||
dbb1c61365 | |||
f443246b9f | |||
0c8ac06b53 | |||
a755530454 | |||
0d3979c175 | |||
1a3017d908 | |||
72ddf34d7c | |||
67ad630617 | |||
432a50bebf | |||
25d4e02cfc | |||
ab81cf242c | |||
593ffdd80b | |||
bad62a8cd5 | |||
474c119fda | |||
96e7225b31 | |||
9bfa5fbae2 | |||
58d4d7f1c5 | |||
caeef01ea7 | |||
2ede073fd2 | |||
9b71efd014 | |||
0275e4daab | |||
ab6245bdee | |||
4e9a325253 | |||
40e7cfdd46 | |||
727e6ea350 | |||
8a470599f3 | |||
3d8a3038bc | |||
0a6adc26e2 | |||
cfc5cf428b | |||
f2d275984d | |||
e2b154277a | |||
9dbf00ba78 | |||
e83ba647f7 | |||
9afe4d9f6b | |||
c91b0b7c72 | |||
5d522cddfd | |||
2043ce828e | |||
2a6c7f996e | |||
8292c148df | |||
88a516aca0 | |||
bb14cfdfd7 | |||
a165484047 | |||
d9fc3a987b | |||
76987b8628 | |||
2b755b3371 | |||
ead6767ad7 | |||
da81d473fc | |||
d0c99fcc61 | |||
b58e7bfcd7 | |||
246cac8505 | |||
d7d30badbf | |||
59bb00090e | |||
68e2ea0b30 | |||
986cd6556c | |||
6fa00ee843 | |||
408c5c5c79 | |||
c4904377ba | |||
12909b6b8a | |||
c488182903 | |||
43ea635c35 | |||
b83f99c399 | |||
8205b2ff36 | |||
71cade5a0b | |||
e391a45102 | |||
3ce8888fb4 | |||
dcc0cd074f | |||
2dc94da374 | |||
4f4b18497a | |||
0dc90d954d | |||
8bb565d375 | |||
a3eca58445 | |||
391c3a1020 | |||
a481d4378c | |||
fdfae830f8 | |||
245b948815 | |||
9ce6000cb7 | |||
57d6a1cf96 | |||
b3fe468075 | |||
485fd2c3da | |||
5a40417876 | |||
97fe725075 | |||
fa476be8f0 | |||
68c69f90c8 | |||
ddf8420b59 | |||
d30126c20d | |||
2f12b31b74 | |||
451a7dbe28 | |||
d3fd1a6667 | |||
9ccab75608 | |||
cd1799dea0 | |||
0dd44584ab | |||
019bd34082 | |||
dfac9b609f | |||
2ae0a9cb82 | |||
d52da62801 | |||
62a3a27b91 | |||
5536415551 | |||
67b7017593 | |||
dcaf17c75d | |||
fcd2c3d9d8 | |||
7c28875bcd | |||
994b328f36 | |||
daf1d8285e | |||
07815e2d97 | |||
20d6b6868c | |||
f2919bae98 | |||
46fbe418b2 | |||
4a0339b36f | |||
f9f7fd3b23 | |||
a6db572af6 | |||
99f0d97b73 | |||
0fe3df45f2 | |||
fb8dfc1ccb | |||
ed8d1d42d0 | |||
be49349c72 | |||
7b6853a826 | |||
8c21d820e9 | |||
408c51f0b4 | |||
c2a2940510 | |||
3a9a6ac5d9 | |||
78087097b8 | |||
5a4e0547e2 | |||
57eb368144 | |||
5046831626 | |||
597af311a2 | |||
62e83d4f69 | |||
8d2c37320b | |||
3f9d5059c6 | |||
13fa77b689 | |||
ee1dc493d1 | |||
d2f0b72759 | |||
3770c21be9 | |||
00cbaf9362 | |||
57f28f4094 | |||
5a4069a1d8 | |||
a0f5ca94dd | |||
786eb1ba39 | |||
726a228dfb | |||
44f14a9d24 | |||
d3115660b4 | |||
a3f40ec4b0 | |||
bd2bc94252 | |||
0f829620e6 | |||
ae9b9509a7 | |||
32e3e8bc55 | |||
dc2c44fbb1 | |||
999bba3e0b | |||
34d607032c | |||
47ca93d071 | |||
e4d0c11c04 | |||
e6a9bc0c60 | |||
deb5407a42 | |||
794c000267 | |||
dee839a263 | |||
6b2edaa378 | |||
70c0d55349 | |||
4cf67ae1b6 | |||
9732e2229c | |||
e665e98ec1 | |||
8618d322e0 | |||
ca7990cea5 | |||
0fc8ed154c | |||
9e7e41bf19 | |||
7c096b8d61 | |||
552038e26c | |||
acd78728bb | |||
55a9651d26 | |||
d35954160a | |||
d30e2bbe85 | |||
ba2f3f58ac | |||
4e256731d6 | |||
f2e3a218e8 | |||
be61fd1181 | |||
f85751a147 | |||
45c5e47048 | |||
0b624e039c | |||
1530ff3553 | |||
69a9c10c95 | |||
159597f5a3 | |||
b174a3c014 | |||
bc32aa1e63 | |||
15209c8612 | |||
4e5fd9dbcd | |||
63a2e8b41e | |||
aa5937d2d9 | |||
e1d9288267 | |||
79aee56c1e | |||
212962deba | |||
557b2bd3a5 | |||
986eb34b71 | |||
f9b889dd67 | |||
250ca49b4f | |||
4f7e2f0b21 | |||
6ba65f4ac3 | |||
832ec72c3e | |||
9c5bef3b35 | |||
4ce498baa3 | |||
62329d336f | |||
285907901c | |||
f346fcb62a | |||
a4bbd13be3 | |||
324eb77ee7 | |||
c21b8ae857 | |||
d73f5cfa89 | |||
31da22d1fd | |||
34ba05c296 | |||
22597af97d | |||
2d53614210 | |||
5be30d0cd3 | |||
0d7131763e | |||
3865a7e36d | |||
fbd992b61b | |||
db8c7a1cc0 | |||
f30c1d5eb1 | |||
0cca54c706 | |||
1ad0780a77 | |||
5459bc1bbb | |||
925d7304d2 | |||
0c51d6b4ae | |||
d0fd993137 | |||
cbe1d9d630 | |||
db5875aa9f | |||
efe26b9ee0 | |||
03949e33f5 | |||
77b1d9f355 | |||
7abcbcb7ea | |||
c576868eaf | |||
74d2f5695d | |||
0849541268 | |||
020b813f40 | |||
2041b0e8e8 | |||
efe47c83b2 | |||
e57ea501d0 | |||
88511d271b | |||
fe13adb17b | |||
afb31ad95f | |||
e773545c7f | |||
3e1dbfa135 | |||
7d53ff402a | |||
25be7ec4bf | |||
4b1197ab5a | |||
bb47eee9df | |||
670703e9d6 | |||
d67fc4bf0b | |||
b8148376a2 | |||
cdac0caddd | |||
97991dfab7 | |||
8bb6fe853f | |||
353a27ad95 | |||
85ac30ff5c | |||
f0850875fd | |||
4ee5cacc16 | |||
cb136bd852 | |||
fc0e3e02c9 | |||
8e715503f1 | |||
7b11728a7b | |||
b0b5337876 | |||
9b0a970ace | |||
2d5b70de2d | |||
a0f3df5d64 | |||
a9c84980d0 | |||
d1305bd3cf | |||
03194a1afa | |||
1c39c822a9 | |||
bd16b3c39f | |||
3d2dce168f | |||
b5e7f5e5b1 | |||
23c83fc473 | |||
6d1e149ac0 | |||
5396d7b298 | |||
83113c4268 | |||
50992f96c5 | |||
122842fd93 | |||
dd3aa418aa | |||
4bbf3780ff | |||
6393c956f4 | |||
30770aa981 | |||
02769437e1 | |||
cafd34522f | |||
5a2c1c0dee | |||
fca965a3bc | |||
324b170b88 | |||
580a5d7f75 | |||
63bbe8beb7 | |||
0fce211ccc | |||
bc3ae46b42 | |||
c65744e7d7 | |||
00fcce285d | |||
0b0ee3388c | |||
b817e54533 | |||
e6f8861bd4 | |||
8a0d52dfd8 | |||
72962e8b3c | |||
b4a5c5c419 | |||
25e61909e9 | |||
eec7f53b31 | |||
0e488f1732 | |||
ff046a0066 | |||
08fba1076f | |||
52d14e166d | |||
76e32d6193 | |||
eb89352504 | |||
eb315457f6 | |||
0990658bf8 | |||
7dfe427107 | |||
bea084ba41 | |||
f73613ac33 | |||
deefc2d9f6 | |||
ecd81dfc79 | |||
b3cecf49ea | |||
5f46385309 | |||
e95566d909 | |||
17baeaf82d | |||
2c68f577fc | |||
f5c39c3268 | |||
24f6e6d626 | |||
0faf84d97d | |||
adcd4d4c6f | |||
e081a7c3b7 | |||
18568ee8f8 | |||
9912391402 | |||
e39ceeb475 | |||
3c966c7b4e | |||
e9706a188f | |||
0464d0a134 | |||
df25a19d72 | |||
cd2d40fb7f | |||
93db6eef04 | |||
4e26066009 | |||
bb4921cf45 | |||
eafd6e7e55 | |||
a78537a0f2 | |||
46d699f492 | |||
5867757d88 | |||
368b584315 | |||
add4c864b6 | |||
51ba65b5c3 | |||
338e2a9acc | |||
44c7e62e51 | |||
27a443b820 | |||
0803f9c7cd | |||
e5b17bda8b | |||
8c5de0d265 | |||
1b38efc7a0 | |||
91028f7659 | |||
9f3547837e | |||
434e0636db | |||
3656f84278 | |||
1e45db1214 | |||
25449450c0 | |||
cf0b26d90c | |||
b50252484f | |||
da8fb6be55 | |||
0bf0de6cc7 | |||
ddc35d833d | |||
d85ada7cbd | |||
4582676075 | |||
cb59d55ec1 | |||
7020c88c30 | |||
4368e40bef | |||
546f822d53 | |||
2b7104573c | |||
f5f0842d0b | |||
c76a53eb71 | |||
d0feac4e8c | |||
9187659f9a | |||
829fe56c62 | |||
0a43fb2202 | |||
cd5a9ac080 | |||
e258eb4800 | |||
44ba10d671 | |||
65279256f3 | |||
3474b602a5 | |||
6887f69faa | |||
21f0e85061 | |||
f2463490c4 | |||
be73860793 | |||
14b9c2b3e3 | |||
593a2a5d06 | |||
9fdf4f1db4 | |||
38baae6cfe | |||
8bc1f39f41 | |||
c8dd491fa5 | |||
7435e7e2e7 | |||
c25edee9a5 | |||
66996bea9b | |||
a6714088e0 | |||
7bc341e21b | |||
26de1fc0c9 | |||
62e8452c8c | |||
a43abad1e3 | |||
ddfc44a898 | |||
4496526f80 | |||
cc9dcdee61 | |||
abe6bb3905 | |||
f9ba6acaa9 | |||
ad1260b6c9 | |||
49767c3d9f | |||
7c2abf1a83 | |||
0ae87432aa | |||
5126145ba8 | |||
44ac8fd1b4 | |||
9b96d91e94 | |||
96f6623ada | |||
dea96aae4d | |||
96eca029bf | |||
911e9e88ab | |||
ea6ae410be | |||
f2a454e0a5 | |||
4d1cfc1351 | |||
20ec2d034c | |||
c01b1cbd47 | |||
291d77eb3e | |||
8c4cbad6a3 | |||
b8de3d6e02 | |||
fc8a8126df | |||
e6e94f34b2 | |||
9e12400da8 | |||
c7c4bdeccf | |||
26a15355d6 | |||
d3b2159712 | |||
7f14609e29 | |||
2b7098936c | |||
87ee87dd6b | |||
6def0ff878 | |||
c8a4cd55d9 | |||
33c997a411 | |||
e685ea5353 | |||
7ca4fc8819 | |||
b93fea08d2 | |||
13f69f3082 | |||
336d82e472 | |||
f917f57f40 | |||
35151cf072 | |||
e9d7761bb9 | |||
25715419bf | |||
707d2f2fe8 | |||
c08bb26010 | |||
df7375d772 | |||
4a6e4b9602 | |||
d62a7656fe | |||
eef0a8e7c1 | |||
bcef4ba329 | |||
ad03180c5c | |||
a650ff5aec | |||
5f439a0ecf | |||
4150a1677b | |||
1bf2673685 | |||
5263e22cba | |||
f7991f01f2 | |||
96bfb2d8ce | |||
e3f7e01b50 | |||
33c5d6c845 | |||
7d3fc7df70 | |||
7b089120d9 | |||
0ea906d205 | |||
c152456453 | |||
0f2140f105 | |||
ccd3258b4d | |||
5024ade1b1 | |||
49da404070 | |||
bf5b83fd8a | |||
2a4aed42ec | |||
49f1eb3b34 | |||
0adc8ba6ae | |||
71076d0edd | |||
e7f3925bed | |||
3b4b5a793a | |||
350a2518c8 | |||
538ac74604 | |||
4a2dcb1a08 | |||
56eed3422c | |||
085b98f6cd | |||
fd3cb0501e | |||
e083ef5d54 | |||
6b13bc3232 | |||
b82dd3f7f2 | |||
663c5ad035 | |||
ea1954af77 | |||
152923b132 | |||
9081a421a6 | |||
42c456ff81 | |||
ad506e6780 | |||
cd3e606211 | |||
a288957a40 | |||
cae3877e72 | |||
5a0724ad3e | |||
edbd9f3715 | |||
4e13fcc213 | |||
1293313003 | |||
1371836157 | |||
d1dad7d765 | |||
95d85f4884 | |||
5a73c6bdc7 | |||
2c0fa66bc8 | |||
8996d68ac7 | |||
5f93836143 | |||
db92cdb5c8 | |||
04480e67fe | |||
74db416c9c | |||
f29b823c3a | |||
16235e3b14 | |||
a7df4f52af | |||
168a937bbc | |||
0ba558ffb1 | |||
88e9b1e3fc | |||
34de5b8eac | |||
143b963b60 | |||
2b98abce71 | |||
f35f25083e | |||
1ffc3588fd | |||
68611f512c | |||
4d53e91c6b | |||
fe319d5fe1 | |||
aace36fd3c | |||
c1d16cedd4 | |||
7c7cf62c48 | |||
569a03f24b | |||
ca7a5bf4bd | |||
d34182b9e3 | |||
bbb7d710ea | |||
689a2aa719 | |||
e9f197e057 | |||
974ef7ced2 | |||
ffa14514a9 | |||
bc9adb42cb | |||
d83443820f | |||
3a6160031b | |||
6c220937e2 | |||
84c99b2023 | |||
92dd0a55d0 | |||
67ba13e5a4 | |||
06a199f38b | |||
f9b2b6684d | |||
b7088a5f9e | |||
6ae7e88353 | |||
7706294ec9 | |||
a443b762cf | |||
89557d68aa | |||
133db54dab | |||
49cbad0edd | |||
ed7fe7be52 | |||
d3600a1ad7 | |||
09fb894a5f | |||
fa800afe59 | |||
ed5fa68872 | |||
1b372d1ccb | |||
26274f24db | |||
7140c4988f | |||
3a7746a66e | |||
1cecd06e36 | |||
e88842ee1c | |||
3ebeb1d6b1 | |||
8d5be8b421 | |||
66d55b990e | |||
48bcd823d4 | |||
0f05f22516 | |||
191eb491ed | |||
a5bd782982 | |||
1ea3d7fcc4 | |||
875da7f061 | |||
e1d1c94364 | |||
3411fa0f0f | |||
048a41db4d | |||
d42b4ce5a0 | |||
02f2875d3b | |||
f776897d4f | |||
9b591b9403 | |||
88d915a634 | |||
9cc14a5b5d | |||
5fbd2fc599 | |||
494cb27e57 | |||
ecb8d9d11e | |||
99c7db563f | |||
a73934c320 | |||
ada03fcbeb | |||
2b647089ba | |||
a876f0b95c | |||
0e7696c64d | |||
84bf71eae7 | |||
e4fa191d02 | |||
4b540cf913 | |||
492288c70a | |||
bbf1932c30 | |||
66e6babac6 | |||
876b142331 | |||
0cb1330bc6 | |||
36f0a2e20f | |||
e2a33ef9e2 | |||
e890c845b8 | |||
e06c9e1df2 | |||
596b5e77c9 | |||
d6a09e795d | |||
e2ffeae3f6 | |||
e9aa762cc7 | |||
b79541af7a | |||
970fa57f76 | |||
df7000cd91 | |||
cbc985a1f4 | |||
9d6b9df128 | |||
5ceb663e92 | |||
6b53a80441 | |||
7e6630a76d | |||
65db97b4fa | |||
18b18503e3 | |||
0cddd84c9f | |||
cfd86ee3dd | |||
7baf6588c5 | |||
7afb458e91 | |||
b82299ec6f | |||
b93d720691 | |||
4567e9c5f4 | |||
676063016a | |||
94882d1245 | |||
e2efbd2381 | |||
aecb85bdd1 | |||
16d4bd4f14 | |||
f54f48fc07 | |||
ca08972495 | |||
977e458cca | |||
f442c94638 | |||
dd9cede913 | |||
d96fb140f9 | |||
618200d243 | |||
e22ad35ed3 | |||
4ea08416b8 | |||
eccd97d0b0 | |||
1d517ceab9 | |||
3c6eb4ec50 | |||
42b297fe8c | |||
c0a8212802 | |||
f733719316 | |||
235233a394 | |||
d01af2568e | |||
5650c37365 | |||
d00296a8bf | |||
1f511a9b56 | |||
cd9ef9ce67 | |||
7e27bd589d | |||
9a95a9f230 | |||
68fb83b58e | |||
7b3fd03e6a | |||
a31efa77c6 | |||
4d1ae1a605 | |||
2343b75ca0 | |||
fc0c491f65 | |||
da007ba378 | |||
8b3bef88f7 | |||
cca0a9da05 | |||
a0f604ee56 | |||
f54c172bb3 | |||
dacf0acdf6 | |||
942843e8dd | |||
192a3fa31d | |||
55b99febc4 | |||
c3673a8eb2 | |||
735907bde1 | |||
8ba651b56e | |||
23112fc28c | |||
9ff67749fb | |||
a38989bd5b | |||
6fc527a8d0 | |||
9e8fe7b1c7 | |||
0988e665e9 | |||
7d1b866778 | |||
f0ac30ec19 | |||
fa21296b58 | |||
412e4caee3 | |||
361cb52383 | |||
559664c792 | |||
655b8561d6 | |||
022815114a | |||
60980aed78 | |||
ee4a1d63d7 | |||
e6432e0f1f | |||
a8a6e0682d | |||
06ebae09f5 | |||
b7bf32b0c5 | |||
47bfdfb3fd | |||
de658515ae | |||
05f1f41c9b | |||
aeefc1866c | |||
46b0585286 | |||
a2ce608244 | |||
2b7b75850c | |||
20141e322c | |||
a4dfb4491e | |||
4c64fb5aad | |||
9e39acc94a | |||
7f4c3508c0 | |||
492cb394fb | |||
86609db9da | |||
71471b2a7c | |||
6b615dbece | |||
e9e5ba39a7 | |||
c6fc44e9bf | |||
63ec2297d2 | |||
06355d72dc | |||
d54fd59d84 | |||
67f310e1ad | |||
97ab03b12a | |||
54c4f8ce52 | |||
5a4f8381b6 | |||
65ca3245f9 | |||
f3f157ff27 | |||
18c6653da0 | |||
6a1bb089fd | |||
ef1639145d | |||
e058b1846c | |||
2c428e4205 | |||
6ffb5fc069 | |||
525705a0a2 | |||
162a13b855 | |||
bfa646c2cb | |||
91016984db | |||
061a21d36d | |||
236bae14da | |||
c314b62553 | |||
85bc006561 | |||
82a57cd13f | |||
c4b208c309 | |||
480f0541b8 | |||
6a9a50a8af | |||
12144e8f02 | |||
386076ec92 | |||
c21fb4676f | |||
8252ec300e | |||
203eb8381a | |||
0b45a41dc1 | |||
3c8150497f | |||
c270b055d9 | |||
27ff1fbc5d | |||
b202e51b15 | |||
96c101257b | |||
a2fb7672c0 | |||
2e59e78096 | |||
612942a1d2 | |||
25ad722126 | |||
8a7a90bc3d | |||
ebeb39faad | |||
d7927d428c | |||
6e3b0348a4 | |||
c7c9692897 | |||
ab77294a2a | |||
7212f2887a | |||
c1e10b2dce | |||
e29099a2d1 | |||
692305ec67 | |||
98e7ab6d42 | |||
1a89796e4a | |||
d72d4f92e2 | |||
e5fb028688 | |||
37766b61cd | |||
8464b2d1d8 | |||
9d530dc002 | |||
f217f6d1d1 | |||
ada1a17261 | |||
871e42eb09 | |||
a86ed75f32 | |||
092228ee5c | |||
853ec9aa9b | |||
a4b9fb6a5c | |||
0b69bb0fb1 | |||
223a1bfb58 | |||
0ef08090d2 | |||
c5c3486f38 | |||
e4c9538a9c | |||
f3af71c947 | |||
78d468f1a9 | |||
41a28eb6c1 | |||
5e311edfd3 | |||
f1da24ca5e | |||
25a33b3342 | |||
4755d7dff7 | |||
6582bd31e3 | |||
ed90f04155 | |||
1e3ccb552f | |||
f65bb9fb06 | |||
6846f7248d | |||
0506eb71f7 | |||
ccf3cc1b18 | |||
ac0986e302 | |||
096a7fbb97 | |||
db7a3d25d6 | |||
76887df014 | |||
52106430dc | |||
5ac15ad250 | |||
c339ff690f | |||
df3458e957 | |||
8b72fea7e9 | |||
ef18119dec | |||
aa30fe1481 | |||
a897ab7ed1 | |||
dc5570872f | |||
f30e4d854b | |||
ed41385ad6 | |||
ec9a37d69b | |||
4f1d3e3e3b | |||
ae22e8415d | |||
c0f1f9dec4 | |||
98926e0d01 | |||
504131ac26 | |||
823b4281ca | |||
ae39ba431a | |||
8650c6298c | |||
8cc804d0ab | |||
f005593dc3 | |||
7e19e2efa9 | |||
1c720357ce | |||
15b808da74 | |||
095d112f8c | |||
a046aa38ca | |||
3247919a75 | |||
5d22e18965 | |||
f443b226ca | |||
234383cd40 | |||
8583bf7559 | |||
9875c51553 | |||
f0beebdb7b | |||
d7bc852151 | |||
62f035aee3 | |||
af303ee392 | |||
a5e61a4225 | |||
cf006037bf | |||
a7c2daa06d | |||
1fdfb774aa | |||
2d498a7c89 | |||
6e4fd8bfcd | |||
571f4348dd | |||
6e658547d3 | |||
0c52cf8e00 | |||
7491ef6198 | |||
9fb391bff9 | |||
f6c013dfa1 | |||
e4c497a194 | |||
7ff24785cb | |||
288a480621 | |||
98300c8157 | |||
0b3481c9ab | |||
b7bcdbdb48 | |||
0033ab3f59 | |||
809aeedb0e | |||
fdc8f79f1f | |||
c150064dbe | |||
2bd2f258f4 | |||
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 | |||
e578d0311d | |||
4ef91a2d79 | |||
119b26d6b9 | |||
9d12546de9 | |||
e8191a5265 | |||
be79131a53 | |||
2a97289ad8 | |||
68ef6c0b1a | |||
252caf8e41 | |||
1e50f2a689 | |||
0cc4ec1550 | |||
404c4a5462 | |||
859a585bdf | |||
62bff959c7 | |||
f6c075ad71 | |||
97492aacff | |||
4ae0bc75f9 | |||
ed4d535342 | |||
9567a670d2 | |||
c4fdba3383 | |||
637b80cd6a | |||
bfaaf191a5 | |||
bf972896d7 | |||
818e393084 | |||
5c5b29b459 | |||
c3660cfb03 | |||
e879295b20 | |||
71ef66d740 | |||
13a2f620b2 | |||
eef71904ff | |||
155b517d5c | |||
8788195c88 | |||
9bc45a2802 | |||
34224e14d6 | |||
6a5c337922 | |||
d342834529 | |||
62f2ffc563 | |||
28794ec72e | |||
13d9fcec29 | |||
3c2047a711 | |||
7bf7f0ba05 | |||
1b887353d7 | |||
352e761388 | |||
3f9ab7ccde | |||
8c32856133 | |||
350b87cd65 | |||
3e063de46e | |||
1cf93847c1 | |||
d860c86ba5 | |||
e793168364 | |||
e48d427268 | |||
acb533440f | |||
1ae2b8cda8 | |||
3b34f636df | |||
ffc97f1a9e | |||
46bc0e731a | |||
17df8dbeba | |||
f14bd71934 | |||
35425d1034 | |||
e581fd7231 | |||
a322920d0b | |||
e303bf22f9 | |||
1214aa841b | |||
ef8a6c6268 | |||
890044708d | |||
27f7ed2a07 | |||
c90cfc225b | |||
1f86b7cb63 | |||
c8ad9d04c6 | |||
2a1ae649a4 | |||
fc5e90b848 | |||
465028e0e2 | |||
272f0a574d | |||
eab4ac6a23 | |||
6ad66ab45e | |||
926d233035 | |||
c0b80e05f7 | |||
6a75658c0a | |||
6cb3deb451 | |||
25dc57bac8 | |||
e5a917fcf4 | |||
9d05b459c7 | |||
f751097be3 | |||
e861b09636 | |||
106298f7f9 | |||
e10bfe7b33 | |||
16119bac40 | |||
7ca97f5222 | |||
870de59af0 | |||
d3347c4b42 | |||
6926f2e135 | |||
4513972086 | |||
5a5ea9763c | |||
b39b0e1a82 | |||
d8d33378ed | |||
ed45be7634 | |||
844cc43377 | |||
7cebe73dbd | |||
921c795c25 | |||
3d411afabc | |||
e22b245ea5 | |||
b9e4d84878 | |||
76f3b69896 | |||
d2a534c515 | |||
56c4d7f6a9 | |||
55e7f52b40 | |||
1566cdd4ae | |||
100c2da2d3 | |||
0785eb7698 | |||
3a757d0369 | |||
93cccedb8f | |||
09bde81f29 | |||
068966d2e8 | |||
0a2b53c2f2 | |||
65351024eb | |||
2498121cd6 | |||
cbb1ae05d5 | |||
58e2bc452b | |||
976d3f00d6 | |||
6a4f5dadd3 | |||
92382d14cd | |||
842d45d293 | |||
1030daecda | |||
df9c83bdf7 | |||
ac162a606b | |||
4a6fd7d3c7 | |||
324efc90d1 | |||
273c9c5777 | |||
38c356aad6 | |||
96e41f58fe | |||
31deb28f5e | |||
dccb32bf01 | |||
5848fb11ac | |||
3b6a8db3b0 | |||
01cab97679 | |||
ddb3474b66 | |||
bfff2c4833 | |||
74ad250a1c | |||
dd45a56246 | |||
7e7d220d9d | |||
59b8283d55 | |||
70e4a57762 | |||
a5ed333121 | |||
42cd635b21 | |||
f7a0dba7a2 | |||
093fffdfbe | |||
59580685be | |||
067e73c8ae | |||
1fd2aa543d | |||
f787ebd51c | |||
0000e81811 | |||
0bc7787ca9 | |||
73ee449bbf | |||
afc72b5d3a | |||
40bc872adb | |||
84edc40676 | |||
f1ed4ce9e3 | |||
1aa589922b | |||
0cecb75531 | |||
e031e9719d | |||
d536a71169 | |||
2e6701017e | |||
28c10ecbfc | |||
8e2af8f0db | |||
2255c80c91 | |||
4ac9f15492 | |||
3f566c4e69 | |||
45bde58ef8 | |||
6d08b9d4ca | |||
1d89d88d37 | |||
5f18e31f46 | |||
a169166d2b | |||
90f838bc36 | |||
08944d1c22 | |||
6fb22ca463 | |||
56d863e979 | |||
ebd2e4a13a | |||
3b723f722d | |||
6ffb990dc4 | |||
b6b210c5e1 | |||
750036c8f7 | |||
5e4546d599 | |||
6a99fa2e9e | |||
34e8a20d76 | |||
98961e42f0 | |||
73c5f67071 | |||
abf897bacd | |||
cefe983a32 | |||
45d141a1dd | |||
3d875f96f1 | |||
bb1677fc29 | |||
6579e788c0 | |||
93d2c16041 | |||
d7c4415e55 | |||
f9786f9b85 | |||
61d450f049 | |||
63b60b3add | |||
0299a69694 | |||
49fdd51a23 | |||
105e8b014b | |||
ed4958477b | |||
f6526728f9 | |||
edd2cd345f | |||
670e597399 | |||
4eb2bfdc92 | |||
6e54a32468 | |||
a30321b9ea | |||
538835d2ac | |||
f69a6e4f07 | |||
608cfd31cf | |||
9865b6e6a4 | |||
9d444d9ee0 | |||
dd20e4a6db | |||
0e29222e0c | |||
94b7f1563a | |||
56d06fe4aa | |||
1fdd51aa13 | |||
480d3d6bf9 | |||
1b5f37334a | |||
c42e0b6409 | |||
04988c8d18 | |||
491a7575f1 | |||
c512d27e78 | |||
2d84c4ed57 | |||
67985e4e4a | |||
2d653c5036 | |||
1763334caf | |||
5d1f5b8cd4 | |||
968f12fdac | |||
6d751be4b6 | |||
8dccb2244c | |||
9aab952e85 | |||
bf708add2e | |||
5b062e1f79 | |||
078eecbcbe | |||
f805844676 | |||
2ac0cbc9b0 | |||
da5e0c6a00 | |||
e9de7a52a5 | |||
b4724242fa | |||
3e8084f188 | |||
44d2aec6e8 | |||
cfe853e66b | |||
07a348e746 | |||
330155ed8a | |||
5e3aba33da | |||
d2c470f9bc | |||
ca267aee15 | |||
446cc5544a | |||
8c6b4332b4 | |||
2b88fe0603 | |||
dfa8bae5a2 | |||
0d0d8d8a11 | |||
f53df0bdf6 | |||
7c81295382 | |||
7c3c0a99cc | |||
ea47e59fe3 | |||
f188160be9 | |||
ddb1055343 | |||
b1b065ee35 | |||
d1e376d2f9 | |||
50eb005eb3 | |||
f7511fdfbd | |||
188da7dc09 | |||
bd42622e5f | |||
c2e799012b | |||
0e35107e7d | |||
0a4cb1f1f2 | |||
57e4a7b633 | |||
8f79fb6445 | |||
68658a867d | |||
cabb41d0f6 | |||
b5866edf97 | |||
ffb0387608 | |||
b83e131029 | |||
91b2c79394 | |||
e3b77a2d03 | |||
28caad63d0 | |||
6c84b007c4 | |||
06a0eeaa25 | |||
956d2e4639 | |||
2cdc292b31 | |||
77bd616367 | |||
5bafb3576a | |||
06fa4db3f7 | |||
a9bacccae5 | |||
5a5f04d86b | |||
d35d03cf93 | |||
0a5940fbe7 | |||
1ed4bef6b4 | |||
ff76fc841f | |||
9856ea6785 | |||
28ecef4c84 | |||
731b6859c4 | |||
c234e8a0ec | |||
b66c77a64e | |||
6295f87b5f | |||
51b04c05b7 | |||
2e54907e83 | |||
56722a0635 | |||
e07b817cfc | |||
12fe4909fa | |||
c3ff7be6fb | |||
9f0a45208d | |||
4631cfc20b | |||
1cc31e1529 | |||
f0a74bcb03 | |||
f9d65b04cd | |||
c21919f1b2 | |||
3050b6dfc7 | |||
f1bee82873 | |||
c6b4888b3f | |||
3540c71ea5 | |||
54b4d125d5 | |||
7740ac691d | |||
1d188263e0 | |||
35f070b4de | |||
1e66871608 | |||
1a845fbc48 | |||
f84e79ff4b | |||
995e525b17 | |||
cc8e26ee8d | |||
0394f8d002 | |||
99c99ed825 | |||
71e36361bf | |||
2a6d0b2b68 | |||
10a08cbd39 | |||
c042ad5ad5 | |||
a16dd13740 | |||
dc89c34d9e | |||
e78db9d303 | |||
1b8bd2243e | |||
5331af2352 | |||
bbeca063cf | |||
b5a36278f4 | |||
67fc02be54 | |||
a1af533323 | |||
403192acb6 | |||
df0c308c1a | |||
75405e7270 | |||
c2509c5407 | |||
ed8794ef7a | |||
76f5fdc203 | |||
11e5d0a262 | |||
0649303820 | |||
deec8aa2d0 | |||
6b58df54cf | |||
93a8ed28ea | |||
3584cff71c | |||
b031f47802 | |||
04d3761db2 | |||
d5fdf3073a | |||
d1e894c6d7 | |||
05881a6fc9 | |||
fdb1322651 | |||
8750249053 | |||
9bd51d4975 | |||
59c923229e | |||
a3e2033e04 | |||
64bc75244b | |||
187fc8b8b6 | |||
54156af0d6 | |||
bf4a60874a | |||
4b81f690f6 | |||
bffcb4d9d6 | |||
a7775c7eb8 | |||
66c0c44df6 | |||
637799bf0a | |||
afb32e8101 | |||
4c719308ce | |||
44257f7b52 | |||
3d141d8789 | |||
1ea5e46cb9 | |||
5639a8d144 | |||
2b2af95908 | |||
c76fcf3e46 | |||
f696272e58 | |||
59a29d1644 | |||
10de757a09 | |||
e8332242b7 | |||
7c1200745b | |||
ce125d431a | |||
ccf094788c | |||
0ab7eeccd9 | |||
108c265f27 | |||
9db5fb4fb3 | |||
7f0e4f6ac2 | |||
f0a35c9ce5 | |||
ab539c9094 | |||
c7d3aabd27 | |||
97b89c8150 | |||
2082224f17 | |||
caca3c9f07 | |||
8de300e1f7 | |||
a05f02b1d9 | |||
e56e53067f | |||
5ef260d2d1 | |||
76804526f9 | |||
0057847208 | |||
b6d8887d3d | |||
a3952f8e7c | |||
bb390b1f49 | |||
245670cd46 | |||
0fdcfa2f9f | |||
ae578de926 | |||
911aba1420 | |||
d1bbbe45df | |||
5e1f28d206 | |||
3f36e6f30c | |||
5fe973b912 | |||
282073cce2 | |||
d045719ac8 | |||
1e14bc11ed | |||
0b7ae738a6 | |||
54627db03a | |||
7390c65df4 | |||
e505f452d4 | |||
f20c1fb296 | |||
32da6e6daf | |||
e4ff3b67c2 | |||
905a028804 | |||
2a7f64616a | |||
7ce3dcd533 | |||
2d4032c2fb | |||
59a399ed36 | |||
4c25356e0e | |||
cc5b594788 | |||
b4c7aab7b9 | |||
ec3cc27ab0 | |||
84122ecdbf | |||
78a509190d | |||
5d70198efe | |||
3218cb753f | |||
c90be786da | |||
f222bd34ff | |||
8d133a4653 | |||
8f0f110156 | |||
7050791126 | |||
296339549a | |||
be8d370e3c | |||
162410f8a0 | |||
09ef66179b | |||
7407d733a4 | |||
751530de5d | |||
893b563505 | |||
325006f2db | |||
e54e50201c | |||
5b952447cc | |||
b40845293b | |||
c5ead19ea2 | |||
42b5e09d1e | |||
ea7dc012d2 | |||
bee8691f19 | |||
3d40e3723b | |||
4dbf7f30b1 | |||
1b421e7a5a | |||
2834a72d5e | |||
295d81b9e4 | |||
ff6a37c99e | |||
26146980f1 | |||
6346f704a0 | |||
1bfb57f642 | |||
f265f2d630 | |||
3326a783f1 | |||
facca53ac3 | |||
4838f62c8c | |||
fd9e226776 | |||
29b315778e | |||
64625c728f | |||
b5726a5d9c | |||
8b7c11b866 | |||
96ac07f4a9 | |||
613204b948 | |||
9762646ee4 | |||
05665a0dff | |||
09f66eb0e2 | |||
bfe37f3dc5 | |||
a4b1a0ade4 | |||
fd0d7036e0 | |||
6d09fc54f6 | |||
f0b567898b | |||
02d263277a | |||
6dbe1b4ee2 | |||
febba8038d | |||
cd6a1fc8a2 | |||
1396a95ee0 | |||
bd29bcf913 | |||
0538a2586e | |||
e4897d2bde | |||
6f9e7cadf3 | |||
b4ceeef962 | |||
9559de3b66 | |||
87d4aed743 | |||
1ab13eb973 | |||
173368d73d | |||
6c083b7619 | |||
4bc1fd6e39 | |||
2ec02dd5a8 | |||
522a5c2cf5 | |||
8737dab346 | |||
4e58cedd94 | |||
16a86907bc | |||
66833f0e70 | |||
ae44b5a4f3 | |||
e8f55568de | |||
35cf94eaf6 | |||
d9a65b6c0a | |||
73cd7d9420 | |||
bfbb60d328 | |||
516680ba77 | |||
5d9c9349bd | |||
c0b99303db | |||
6957636792 | |||
a33806398a | |||
ad90da7351 | |||
10a0d6ae64 | |||
8eb8dcf946 | |||
5df5106e1e | |||
c4dee2c085 | |||
5a22a334cb | |||
28d04e1ec1 | |||
3322a9d87f | |||
a788d31931 | |||
0c41a887b4 | |||
bf6d819bc1 | |||
4011224944 | |||
8463beaeb6 | |||
cfba19618f | |||
f7ab826740 | |||
7ad8ddecfd | |||
ec8d24f05d | |||
f0d795428e | |||
7b06222619 | |||
c8f491668e | |||
85246a7054 | |||
efae5c2e22 | |||
a20a40e3b6 | |||
4293c057dc | |||
31e4a0db03 | |||
63ddde68cd | |||
ce7ae09bd4 | |||
e18f4de927 | |||
03137a4804 | |||
7e44ff7a39 | |||
957ba814bf | |||
18a2f66d8a | |||
e3e8bf046e | |||
0693806bf8 | |||
dd45471a37 | |||
78ca584f1c | |||
50d92b5f03 | |||
8d33c3af0b | |||
a35e03dee0 | |||
e8ffd034c8 | |||
61feddcdf2 | |||
998330ac2e | |||
daad41c96d | |||
bdfe1f0d69 | |||
c344256811 | |||
22d18a9b15 | |||
55dfcf9591 | |||
ce7a9f0141 | |||
77efbb366a | |||
02155c8c00 | |||
8a96b9d0a7 | |||
5dc16756b2 | |||
72d84ea347 | |||
e27eab45c7 | |||
522d3cec00 | |||
8fe8bae9d2 | |||
17919c3585 | |||
06aa5e4ea4 | |||
82db1f8439 | |||
ff8d6e5a66 | |||
5b55b32bd2 | |||
0a159d65d6 | |||
a74b35081c | |||
52f1e82178 | |||
aa4df107e7 | |||
ab7c7c219b | |||
6df8755c7b | |||
92a5d1c9b4 | |||
ca0cc98e03 | |||
72b113e562 | |||
b996f84989 | |||
709b3f32d3 | |||
5acffd3473 | |||
2d3491b117 | |||
326460a870 | |||
6eccfc3adf | |||
48f68715b1 | |||
f2cc8881d7 | |||
7d9c80f626 | |||
d941cc4c34 | |||
f46c46e4f2 | |||
7366096de9 | |||
b681b191f9 | |||
eba1ba9d32 | |||
cb7db5bbd5 | |||
01c381037c | |||
add5240fa5 | |||
0aa496b6d5 | |||
27f3796ac1 | |||
3231f41009 | |||
57f183b698 | |||
e0a2f5cbc5 | |||
d868e4d9ee | |||
4c3bddb64f | |||
77b063cd35 | |||
9135259b03 | |||
0ba5a0b3ba | |||
2ad8d49635 | |||
6e21f716f8 | |||
a5619d4f8d | |||
6a8cbc41ba | |||
27e0c3c6cf | |||
153fb49e60 | |||
efa3d64ce8 | |||
6540b71614 | |||
b45c172e51 | |||
2d59597333 | |||
9387fbd646 | |||
ff1e653c8e | |||
4b58b6f7b7 | |||
e255a5e81c | |||
eb6e956e79 | |||
d3f17e1723 | |||
c51f5a6437 | |||
b1b82d1c30 | |||
aeb4657242 | |||
c528e17966 | |||
0f533c7284 | |||
a5f9f24aa0 | |||
711260fd60 | |||
6b4277e697 | |||
ed184620f5 | |||
f57a739691 | |||
caff8b7340 | |||
1c7d1ab6f4 | |||
284b2ce8fc | |||
62b5a35a33 | |||
9fec7b2130 | |||
47c61004c7 | |||
fe7df03a9a | |||
9bb6c2e54f | |||
177c0d6e63 | |||
5d3cd09a80 | |||
f5909d34ca | |||
426c00e454 | |||
73ff4ad086 | |||
70afef5cdf | |||
96328398b3 | |||
53a66ec37c | |||
3955140653 | |||
bac01c6469 | |||
ccdd5d1eb1 | |||
2c7f3aacd3 | |||
2f040a9671 | |||
88682b016d | |||
67f61efbb9 | |||
f1c0368da4 | |||
367c5f36a6 | |||
6d209a01f8 | |||
070e7c5619 | |||
92f480909f | |||
84e4484f12 | |||
8722f9fb6b | |||
8757b35d44 | |||
767a4ca648 | |||
6c40894d24 | |||
85e73cc8ac | |||
0d4f46b768 | |||
bfd515ac56 | |||
a896086851 | |||
fb0b14df65 | |||
7e3b9d1534 | |||
e1eb133476 | |||
669277c551 | |||
b81a85ecd8 | |||
8778fa8b4f | |||
aca13c2355 | |||
7d0daf3f12 | |||
48072e3d68 | |||
e082113484 | |||
f6bb64df82 | |||
2dee7e6105 | |||
614c3d8f2e | |||
469888e6a5 | |||
d9e9b44d7a | |||
b0173340c6 | |||
a9fd2f207d | |||
a241878ac7 | |||
0834257379 | |||
597a977489 | |||
e124ecf7f7 | |||
e4f8d27585 | |||
1e93770888 | |||
fd680bc558 | |||
7a132c628e | |||
c93ca46cf5 | |||
f54b9f21ca | |||
66e905b7dd | |||
a7439d0f9d | |||
5b12e16bb1 | |||
1ae6ed230a | |||
20d422cfd7 | |||
3fa2e91d17 | |||
48cdcd9ca0 | |||
245fbba46d | |||
ff7a2e4dbb | |||
cc40b5ce13 | |||
ae35e16cd4 | |||
7aa7829f75 | |||
6f45ec88d2 | |||
81bc122589 | |||
640d9d55c3 | |||
11e984da07 | |||
491ad946b2 | |||
ab628588f8 | |||
c2a4b6d4ee | |||
ed9bff0817 | |||
69290551b9 | |||
8174627b3d | |||
1549577338 | |||
597fa8cb43 | |||
5146c2f148 | |||
c21b2511c2 | |||
c4203212e3 | |||
1b2be06e04 | |||
066f6cd447 | |||
6f64eeab60 | |||
276bc6357e | |||
08ac213965 | |||
aab0eeaba5 | |||
f19b2752e7 | |||
bda891e664 | |||
5c933f0155 | |||
e48a623dea | |||
2f71366878 | |||
ae2d05d0c6 | |||
0160f7e725 | |||
f58c7468cd | |||
95b4ff3931 | |||
a16eb6b1ff | |||
bb01122a82 | |||
f6a5af0f62 | |||
bd72824c60 | |||
c51f8f94e5 | |||
917a54c017 | |||
1d7f7f242c | |||
3ba3d0621b | |||
fa95666a40 | |||
6643503722 | |||
03d9fd1f6e | |||
f172556b89 | |||
f2563c9ef3 | |||
baf8ec8d3a | |||
0c164ae7a6 | |||
d786523932 | |||
2be6b6f411 | |||
212631ed50 | |||
881aebffcf | |||
325b06deda | |||
ff7b83f562 | |||
be6444d1ca | |||
f3cc916acc | |||
e9f2118ddf | |||
bf8ae49a8f | |||
7116fd3556 | |||
225bc32a98 | |||
b06a5047ee | |||
f7cd3c0832 | |||
b94aff54d1 | |||
5e9a5e5cd4 | |||
efedbb11de | |||
cfeae5a31e | |||
8bcda98da5 | |||
3cf9bb36bf | |||
8ef6aad664 | |||
289946016e | |||
8f333b5f66 | |||
92c199fa6d | |||
ec3d4607ae | |||
523ccf5dba | |||
cb92e28384 | |||
fb2aacea67 | |||
813147b681 | |||
dc66e3c799 | |||
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 | |||
b3e36df0d4 | |||
95862fa2fa | |||
ea75369306 | |||
2be328e4df | |||
b50be84244 | |||
b227bead4d | |||
41a03e285f | |||
5d213e46bb | |||
4c90d8908a | |||
7cfaa86fe6 | |||
cebead1ebf | |||
a8cbc89589 | |||
b6029b3279 | |||
581a3bb155 | |||
e83b1243bd | |||
716f68ec33 | |||
626beebdf8 | |||
de0fcbe0f4 | |||
15fe88d5a6 | |||
ba8a3b019e | |||
f006132c24 | |||
a6226fd772 | |||
ed86301f68 | |||
0c61041ed6 | |||
ab6f23b751 | |||
6baf4e4da4 | |||
46d723ce57 | |||
c4d5907324 | |||
7c86d365da | |||
47ac23d314 | |||
db0aa64208 | |||
ffbb3ee955 | |||
d0c637e6b9 | |||
59dcbb810c | |||
a452128a36 | |||
6a38e33331 | |||
9d66d5eae4 | |||
f559d6d45e | |||
809ea28f80 | |||
bf9c0cbddb | |||
f45022dc2f | |||
00e302da76 | |||
dd3c8a72a2 | |||
14825944d7 | |||
e84f865118 | |||
f32c5d3716 | |||
33f13ad7c5 | |||
f6bb2099bf | |||
2d755dfac9 | |||
aa7d2fe355 | |||
55194925e6 | |||
c87977a0c5 | |||
390b44eb2b | |||
12515dc49e | |||
5fee9b925e | |||
f5a3c5e637 | |||
6a5fb96672 | |||
29ef1f27fe | |||
899062438f | |||
530a446d4a | |||
98e2d9d6f7 | |||
f234da8019 | |||
760486a1f7 | |||
5befe8a1f1 | |||
eea7f7a977 | |||
28a592e4f4 | |||
85baaed475 | |||
1fd88224a3 | |||
9b1cdd334d | |||
eacf36a4d1 | |||
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 | |||
3e5e6c6e94 | |||
11c649b891 | |||
62a15162fe | |||
c131aab043 | |||
98bdfc0c1b | |||
8d2cca9754 | |||
ea00f105a7 | |||
4ef987fab4 | |||
d4df71b2b0 | |||
972c9cf6ae | |||
3e7d4888e5 | |||
4da8b2fcd4 | |||
1d9c8daef8 | |||
5c8273d57c | |||
0bb92f3a3a | |||
9ab80dd6ae | |||
977f8acefd | |||
f95661b740 | |||
2cf9f0fca1 | |||
fe14431526 | |||
a50234b3be | |||
ace40eab9e | |||
100ac47bf3 | |||
2f566d665a | |||
e46775cf9e | |||
5e93b90dea | |||
e6b0a8fab8 | |||
8dda4cbdf2 | |||
5db9d38359 | |||
7431842325 | |||
644de29e22 | |||
482e1488a9 | |||
013c7e2b07 | |||
1119a15b5c | |||
f0b922473e | |||
092e5115d1 | |||
f239fff4c1 | |||
a8791ef649 | |||
6697ee01b5 | |||
4137c54b90 | |||
cdf2241c71 | |||
fa0e936fbb | |||
7afc0b03a2 | |||
42f8ed6ca2 | |||
939fa07582 | |||
4eaffd81a5 | |||
5e7cbab196 | |||
83ad8ca596 | |||
1fcc40cd1d | |||
ffcb4e94d3 | |||
4577d26dc0 | |||
7ed37eb8ae | |||
9a863b3358 | |||
b54cf3a766 | |||
8c05e42c7a | |||
ed3c566d97 | |||
675ea4efdb | |||
8d833e9337 | |||
d7cf4188e2 | |||
4e3250b7fb | |||
2b2999460c | |||
edfc744918 | |||
14c3dd817d | |||
9fa6213731 | |||
e394a16023 | |||
a03b097d63 | |||
644e6b2c0f | |||
789f6f226b | |||
b7d11a0f5d | |||
bbe3165f82 | |||
b9dee075eb | |||
e85fcb355a | |||
7121c4d4e2 | |||
bd0708c7eb | |||
311d0b8e8e | |||
e082631e51 | |||
12510bd5da | |||
fd441eb612 | |||
9938f30d13 | |||
2f732bf15e | |||
b7e6a41622 | |||
f003a91f5c | |||
4523dc8624 | |||
6f843a3355 | |||
359ff69389 | |||
031e2f7ae1 | |||
adc27d6a93 | |||
e4dc25ed49 | |||
7171221d82 | |||
866a3014de | |||
33e5da5b6c | |||
b9457af004 | |||
3d5fc24dae | |||
1d25e5bdf5 | |||
be19c5ca3e | |||
e05cdb17e8 | |||
70569fadce | |||
8b09a900a1 | |||
7bee6c1004 | |||
5e1ca57a7b | |||
e0ef578eae | |||
d478f56759 | |||
528fc51b6d | |||
785bf2088e | |||
82823118b9 | |||
54a03bc7d9 | |||
74fab8ff54 | |||
1ba5f45132 | |||
f934f1b47f | |||
daa1acefc5 | |||
11042ab914 | |||
0d53d19946 | |||
8c8195e9c3 | |||
a98b02c112 | |||
0008d12284 | |||
561fa03529 | |||
ae4e099e7c | |||
5dbeffdeaf | |||
e651013a8b | |||
84069fcc14 | |||
f3abf6aa63 | |||
bff9703f0a | |||
033395be32 | |||
922f8bbbf1 | |||
fb20d4b126 | |||
9146ef75dd | |||
a45e390ad6 | |||
7b4d495439 |
@ -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:
|
||||
|
5
.github/workflows/check-whitespace.yml
vendored
5
.github/workflows/check-whitespace.yml
vendored
@ -1,8 +1,9 @@
|
||||
name: check-whitespace
|
||||
|
||||
# Get the repo with the commits(+1) in the series.
|
||||
# Get the repository with all commits to ensure that we can analyze
|
||||
# all of the commits contributed via the Pull Request.
|
||||
# Process `git log --check` output to extract just the check errors.
|
||||
# Add a comment to the pull request with the check errors.
|
||||
# Exit with failure upon white-space issues.
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
|
105
.github/workflows/l10n.yml
vendored
Normal file
105
.github/workflows/l10n.yml
vendored
Normal file
@ -0,0 +1,105 @@
|
||||
name: git-l10n
|
||||
|
||||
on: [push, pull_request_target]
|
||||
|
||||
jobs:
|
||||
git-po-helper:
|
||||
if: >-
|
||||
endsWith(github.repository, '/git-po') ||
|
||||
contains(github.head_ref, 'l10n') ||
|
||||
contains(github.ref, 'l10n')
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Setup base and head objects
|
||||
id: setup-tips
|
||||
run: |
|
||||
if test "${{ github.event_name }}" = "pull_request_target"
|
||||
then
|
||||
base=${{ github.event.pull_request.base.sha }}
|
||||
head=${{ github.event.pull_request.head.sha }}
|
||||
else
|
||||
base=${{ github.event.before }}
|
||||
head=${{ github.event.after }}
|
||||
fi
|
||||
echo "::set-output name=base::$base"
|
||||
echo "::set-output name=head::$head"
|
||||
- name: Run partial clone
|
||||
run: |
|
||||
git -c init.defaultBranch=master init --bare .
|
||||
git remote add \
|
||||
--mirror=fetch \
|
||||
origin \
|
||||
https://github.com/${{ github.repository }}
|
||||
# Fetch tips that may be unreachable from github.ref:
|
||||
# - For a forced push, "$base" may be unreachable.
|
||||
# - For a "pull_request_target" event, "$head" may be unreachable.
|
||||
args=
|
||||
for commit in \
|
||||
${{ steps.setup-tips.outputs.base }} \
|
||||
${{ steps.setup-tips.outputs.head }}
|
||||
do
|
||||
case $commit in
|
||||
*[^0]*)
|
||||
args="$args $commit"
|
||||
;;
|
||||
*)
|
||||
# Should not fetch ZERO-OID.
|
||||
;;
|
||||
esac
|
||||
done
|
||||
git -c protocol.version=2 fetch \
|
||||
--progress \
|
||||
--no-tags \
|
||||
--no-write-fetch-head \
|
||||
--filter=blob:none \
|
||||
origin \
|
||||
${{ github.ref }} \
|
||||
$args
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '>=1.16'
|
||||
- name: Install git-po-helper
|
||||
run: go install github.com/git-l10n/git-po-helper@main
|
||||
- name: Install other dependencies
|
||||
run: |
|
||||
sudo apt-get update -q &&
|
||||
sudo apt-get install -q -y gettext
|
||||
- name: Run git-po-helper
|
||||
id: check-commits
|
||||
run: |
|
||||
exit_code=0
|
||||
git-po-helper check-commits \
|
||||
--github-action-event="${{ github.event_name }}" -- \
|
||||
${{ steps.setup-tips.outputs.base }}..${{ steps.setup-tips.outputs.head }} \
|
||||
>git-po-helper.out 2>&1 || exit_code=$?
|
||||
if test $exit_code -ne 0 || grep -q WARNING git-po-helper.out
|
||||
then
|
||||
# Remove ANSI colors which are proper for console logs but not
|
||||
# proper for PR comment.
|
||||
echo "COMMENT_BODY<<EOF" >>$GITHUB_ENV
|
||||
perl -pe 's/\e\[[0-9;]*m//g; s/\bEOF$//g' git-po-helper.out >>$GITHUB_ENV
|
||||
echo "EOF" >>$GITHUB_ENV
|
||||
fi
|
||||
cat git-po-helper.out
|
||||
exit $exit_code
|
||||
- name: Create comment in pull request for report
|
||||
uses: mshick/add-pr-comment@v1
|
||||
if: >-
|
||||
always() &&
|
||||
github.event_name == 'pull_request_target' &&
|
||||
env.COMMENT_BODY != ''
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
repo-token-user-login: 'github-actions[bot]'
|
||||
message: >
|
||||
${{ steps.check-commits.outcome == 'failure' && 'Errors and warnings' || 'Warnings' }}
|
||||
found by [git-po-helper](https://github.com/git-l10n/git-po-helper#readme) in workflow
|
||||
[#${{ github.run_number }}](${{ env.GITHUB_SERVER_URL }}/${{ github.repository }}/actions/runs/${{ github.run_id }}):
|
||||
|
||||
```
|
||||
|
||||
${{ env.COMMENT_BODY }}
|
||||
|
||||
```
|
41
.github/workflows/main.yml
vendored
41
.github/workflows/main.yml
vendored
@ -1,4 +1,4 @@
|
||||
name: CI/PR
|
||||
name: CI
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
@ -7,6 +7,7 @@ env:
|
||||
|
||||
jobs:
|
||||
ci-config:
|
||||
name: config
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
enabled: ${{ steps.check-ref.outputs.enabled }}${{ steps.skip-if-redundant.outputs.enabled }}
|
||||
@ -77,6 +78,7 @@ jobs:
|
||||
}
|
||||
|
||||
windows-build:
|
||||
name: win build
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
runs-on: windows-latest
|
||||
@ -88,7 +90,7 @@ jobs:
|
||||
env:
|
||||
HOME: ${{runner.workspace}}
|
||||
NO_PERL: 1
|
||||
run: ci/make-test-artifacts.sh artifacts
|
||||
run: . /etc/profile && 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
|
||||
@ -97,6 +99,7 @@ jobs:
|
||||
name: windows-artifacts
|
||||
path: artifacts
|
||||
windows-test:
|
||||
name: win test
|
||||
runs-on: windows-latest
|
||||
needs: [windows-build]
|
||||
strategy:
|
||||
@ -115,7 +118,7 @@ jobs:
|
||||
- uses: git-for-windows/setup-git-for-windows-sdk@v1
|
||||
- name: test
|
||||
shell: bash
|
||||
run: ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
run: . /etc/profile && ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
- name: ci/print-test-failures.sh
|
||||
if: failure()
|
||||
shell: bash
|
||||
@ -127,6 +130,7 @@ jobs:
|
||||
name: failed-tests-windows
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
vs-build:
|
||||
name: win+VS build
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
env:
|
||||
@ -178,6 +182,7 @@ jobs:
|
||||
name: vs-artifacts
|
||||
path: artifacts
|
||||
vs-test:
|
||||
name: win+VS test
|
||||
runs-on: windows-latest
|
||||
needs: vs-build
|
||||
strategy:
|
||||
@ -198,8 +203,7 @@ jobs:
|
||||
shell: bash
|
||||
env:
|
||||
NO_SVN_TESTS: 1
|
||||
GIT_TEST_SKIP_REBASE_P: 1
|
||||
run: ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
run: . /etc/profile && ci/run-test-slice.sh ${{matrix.nr}} 10
|
||||
- name: ci/print-test-failures.sh
|
||||
if: failure()
|
||||
shell: bash
|
||||
@ -211,6 +215,7 @@ jobs:
|
||||
name: failed-tests-windows
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
regular:
|
||||
name: ${{matrix.vector.jobname}} (${{matrix.vector.pool}})
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
strategy:
|
||||
@ -220,21 +225,37 @@ jobs:
|
||||
- jobname: linux-clang
|
||||
cc: clang
|
||||
pool: ubuntu-latest
|
||||
- jobname: linux-sha256
|
||||
cc: clang
|
||||
os: ubuntu
|
||||
pool: ubuntu-latest
|
||||
- jobname: linux-gcc
|
||||
cc: gcc
|
||||
cc_package: gcc-8
|
||||
pool: ubuntu-latest
|
||||
- jobname: linux-TEST-vars
|
||||
cc: gcc
|
||||
os: ubuntu
|
||||
cc_package: gcc-8
|
||||
pool: ubuntu-latest
|
||||
- jobname: osx-clang
|
||||
cc: clang
|
||||
pool: macos-latest
|
||||
- jobname: osx-gcc
|
||||
cc: gcc
|
||||
cc_package: gcc-9
|
||||
pool: macos-latest
|
||||
- jobname: linux-gcc-default
|
||||
cc: gcc
|
||||
pool: ubuntu-latest
|
||||
- jobname: linux-leaks
|
||||
cc: gcc
|
||||
pool: ubuntu-latest
|
||||
env:
|
||||
CC: ${{matrix.vector.cc}}
|
||||
CC_PACKAGE: ${{matrix.vector.cc_package}}
|
||||
jobname: ${{matrix.vector.jobname}}
|
||||
runs_on_pool: ${{matrix.vector.pool}}
|
||||
runs-on: ${{matrix.vector.pool}}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
@ -249,6 +270,7 @@ jobs:
|
||||
name: failed-tests-${{matrix.vector.jobname}}
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
dockerized:
|
||||
name: ${{matrix.vector.jobname}} (${{matrix.vector.image}})
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
strategy:
|
||||
@ -257,8 +279,11 @@ jobs:
|
||||
vector:
|
||||
- jobname: linux-musl
|
||||
image: alpine
|
||||
- jobname: Linux32
|
||||
- jobname: linux32
|
||||
os: ubuntu32
|
||||
image: daald/ubuntu32:xenial
|
||||
- jobname: pedantic
|
||||
image: fedora
|
||||
env:
|
||||
jobname: ${{matrix.vector.jobname}}
|
||||
runs-on: ubuntu-latest
|
||||
@ -271,7 +296,7 @@ jobs:
|
||||
if: failure()
|
||||
- name: Upload failed tests' directories
|
||||
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: failed-tests-${{matrix.vector.jobname}}
|
||||
path: ${{env.FAILED_TEST_ARTIFACTS}}
|
||||
@ -285,6 +310,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- run: ci/install-dependencies.sh
|
||||
- run: ci/run-static-analysis.sh
|
||||
- run: ci/check-directional-formatting.bash
|
||||
sparse:
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
@ -306,6 +332,7 @@ jobs:
|
||||
run: ci/install-dependencies.sh
|
||||
- run: make sparse
|
||||
documentation:
|
||||
name: documentation
|
||||
needs: ci-config
|
||||
if: needs.ci-config.outputs.enabled == 'yes'
|
||||
env:
|
||||
|
5
.gitignore
vendored
5
.gitignore
vendored
@ -72,11 +72,13 @@
|
||||
/git-format-patch
|
||||
/git-fsck
|
||||
/git-fsck-objects
|
||||
/git-fsmonitor--daemon
|
||||
/git-gc
|
||||
/git-get-tar-commit-id
|
||||
/git-grep
|
||||
/git-hash-object
|
||||
/git-help
|
||||
/git-hook
|
||||
/git-http-backend
|
||||
/git-http-fetch
|
||||
/git-http-push
|
||||
@ -125,7 +127,6 @@
|
||||
/git-range-diff
|
||||
/git-read-tree
|
||||
/git-rebase
|
||||
/git-rebase--preserve-merges
|
||||
/git-receive-pack
|
||||
/git-reflog
|
||||
/git-remote
|
||||
@ -190,6 +191,7 @@
|
||||
/gitweb/static/gitweb.min.*
|
||||
/config-list.h
|
||||
/command-list.h
|
||||
/hook-list.h
|
||||
*.tar.gz
|
||||
*.dsc
|
||||
*.deb
|
||||
@ -224,6 +226,7 @@
|
||||
*.lib
|
||||
*.res
|
||||
*.sln
|
||||
*.sp
|
||||
*.suo
|
||||
*.ncb
|
||||
*.vcproj
|
||||
|
5
.mailmap
5
.mailmap
@ -59,8 +59,9 @@ David Reiss <dreiss@facebook.com> <dreiss@dreiss-vmware.(none)>
|
||||
David S. Miller <davem@davemloft.net>
|
||||
David Turner <novalis@novalis.org> <dturner@twopensource.com>
|
||||
David Turner <novalis@novalis.org> <dturner@twosigma.com>
|
||||
Derrick Stolee <dstolee@microsoft.com> <stolee@gmail.com>
|
||||
Derrick Stolee <dstolee@microsoft.com> Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>
|
||||
Derrick Stolee <derrickstolee@github.com> <stolee@gmail.com>
|
||||
Derrick Stolee <derrickstolee@github.com> Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>
|
||||
Derrick Stolee <derrickstolee@github.com> <dstolee@microsoft.com>
|
||||
Deskin Miller <deskinm@umich.edu>
|
||||
Đoàn Trần Công Danh <congdanhqx@gmail.com> Doan Tran Cong Danh
|
||||
Dirk Süsserott <newsletter@dirk.my1.cc>
|
||||
|
60
.travis.yml
60
.travis.yml
@ -1,60 +0,0 @@
|
||||
language: c
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/travis-cache
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
|
||||
osx_image: xcode10.1
|
||||
|
||||
compiler:
|
||||
- clang
|
||||
- gcc
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- env: jobname=linux-gcc-default
|
||||
os: linux
|
||||
compiler:
|
||||
addons:
|
||||
before_install:
|
||||
- env: jobname=linux-gcc-4.8
|
||||
os: linux
|
||||
dist: trusty
|
||||
compiler:
|
||||
- env: jobname=Linux32
|
||||
os: linux
|
||||
compiler:
|
||||
addons:
|
||||
services:
|
||||
- docker
|
||||
before_install:
|
||||
script: ci/run-docker.sh
|
||||
- env: jobname=linux-musl
|
||||
os: linux
|
||||
compiler:
|
||||
addons:
|
||||
services:
|
||||
- docker
|
||||
before_install:
|
||||
script: ci/run-docker.sh
|
||||
- env: jobname=StaticAnalysis
|
||||
os: linux
|
||||
compiler:
|
||||
script: ci/run-static-analysis.sh
|
||||
after_failure:
|
||||
- env: jobname=Documentation
|
||||
os: linux
|
||||
compiler:
|
||||
script: ci/test-documentation.sh
|
||||
after_failure:
|
||||
|
||||
before_install: ci/install-dependencies.sh
|
||||
script: ci/run-build-and-tests.sh
|
||||
after_failure: ci/print-test-failures.sh
|
||||
|
||||
notifications:
|
||||
email: false
|
@ -70,8 +70,8 @@ git@sfconservancy.org, or individually:
|
||||
|
||||
- Ævar Arnfjörð Bjarmason <avarab@gmail.com>
|
||||
- Christian Couder <christian.couder@gmail.com>
|
||||
- Jeff King <peff@peff.net>
|
||||
- Junio C Hamano <gitster@pobox.com>
|
||||
- Taylor Blau <me@ttaylorr.com>
|
||||
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
|
1
Documentation/.gitignore
vendored
1
Documentation/.gitignore
vendored
@ -14,4 +14,5 @@ manpage-base-url.xsl
|
||||
SubmittingPatches.txt
|
||||
tmp-doc-diff/
|
||||
GIT-ASCIIDOCFLAGS
|
||||
/.build/
|
||||
/GIT-EXCLUDED-PROGRAMS
|
||||
|
@ -26,6 +26,13 @@ code. For Git in general, a few rough rules are:
|
||||
go and fix it up."
|
||||
Cf. http://lkml.iu.edu/hypermail/linux/kernel/1001.3/01069.html
|
||||
|
||||
- Log messages to explain your changes are as important as the
|
||||
changes themselves. Clearly written code and in-code comments
|
||||
explain how the code works and what is assumed from the surrounding
|
||||
context. The log messages explain what the changes wanted to
|
||||
achieve and why the changes were necessary (more on this in the
|
||||
accompanying SubmittingPatches document).
|
||||
|
||||
Make your code readable and sensible, and don't try to be clever.
|
||||
|
||||
As for more concrete guidelines, just imitate the existing code
|
||||
@ -210,6 +217,9 @@ For C programs:
|
||||
. since mid 2017 with 512f41cf, we have been using designated
|
||||
initializers for array (e.g. "int array[10] = { [5] = 2 }").
|
||||
|
||||
. since early 2021 with 765dc168882, we have been using variadic
|
||||
macros, mostly for printf-like trace and debug macros.
|
||||
|
||||
These used to be forbidden, but we have not heard any breakage
|
||||
report, and they are assumed to be safe.
|
||||
|
||||
@ -217,7 +227,10 @@ For C programs:
|
||||
the first statement (i.e. -Wdeclaration-after-statement).
|
||||
|
||||
- Declaring a variable in the for loop "for (int i = 0; i < 10; i++)"
|
||||
is still not allowed in this codebase.
|
||||
is still not allowed in this codebase. We are in the process of
|
||||
allowing it by waiting to see that 44ba10d6 (revision: use C99
|
||||
declaration of variable in for() loop, 2021-11-14) does not get
|
||||
complaints. Let's revisit this around November 2022.
|
||||
|
||||
- NULL pointers shall be written as NULL, not as 0.
|
||||
|
||||
@ -499,6 +512,33 @@ For Python scripts:
|
||||
- Where required libraries do not restrict us to Python 2, we try to
|
||||
also be compatible with Python 3.1 and later.
|
||||
|
||||
|
||||
Program Output
|
||||
|
||||
We make a distinction between a Git command's primary output and
|
||||
output which is merely chatty feedback (for instance, status
|
||||
messages, running transcript, or progress display), as well as error
|
||||
messages. Roughly speaking, a Git command's primary output is that
|
||||
which one might want to capture to a file or send down a pipe; its
|
||||
chatty output should not interfere with these use-cases.
|
||||
|
||||
As such, primary output should be sent to the standard output stream
|
||||
(stdout), and chatty output should be sent to the standard error
|
||||
stream (stderr). Examples of commands which produce primary output
|
||||
include `git log`, `git show`, and `git branch --list` which generate
|
||||
output on the stdout stream.
|
||||
|
||||
Not all Git commands have primary output; this is often true of
|
||||
commands whose main function is to perform an action. Some action
|
||||
commands are silent, whereas others are chatty. An example of a
|
||||
chatty action commands is `git clone` with its "Cloning into
|
||||
'<path>'..." and "Checking connectivity..." status messages which it
|
||||
sends to the stderr stream.
|
||||
|
||||
Error messages from Git commands should always be sent to the stderr
|
||||
stream.
|
||||
|
||||
|
||||
Error Messages
|
||||
|
||||
- Do not end error messages with a full stop.
|
||||
|
@ -1,3 +1,6 @@
|
||||
# Import tree-wide shared Makefile behavior and libraries
|
||||
include ../shared.mak
|
||||
|
||||
# Guard against environment variables
|
||||
MAN1_TXT =
|
||||
MAN5_TXT =
|
||||
@ -90,6 +93,7 @@ SP_ARTICLES += $(API_DOCS)
|
||||
TECH_DOCS += MyFirstContribution
|
||||
TECH_DOCS += MyFirstObjectWalk
|
||||
TECH_DOCS += SubmittingPatches
|
||||
TECH_DOCS += technical/bundle-format
|
||||
TECH_DOCS += technical/hash-function-transition
|
||||
TECH_DOCS += technical/http-protocol
|
||||
TECH_DOCS += technical/index-format
|
||||
@ -214,33 +218,6 @@ DEFAULT_EDITOR_SQ = $(subst ','\'',$(DEFAULT_EDITOR))
|
||||
ASCIIDOC_EXTRA += -a 'git-default-editor=$(DEFAULT_EDITOR_SQ)'
|
||||
endif
|
||||
|
||||
QUIET_SUBDIR0 = +$(MAKE) -C # space to separate -C and subdir
|
||||
QUIET_SUBDIR1 =
|
||||
|
||||
ifneq ($(findstring $(MAKEFLAGS),w),w)
|
||||
PRINT_DIR = --no-print-directory
|
||||
else # "make -w"
|
||||
NO_SUBDIR = :
|
||||
endif
|
||||
|
||||
ifneq ($(findstring $(MAKEFLAGS),s),s)
|
||||
ifndef V
|
||||
QUIET_ASCIIDOC = @echo ' ' ASCIIDOC $@;
|
||||
QUIET_XMLTO = @echo ' ' XMLTO $@;
|
||||
QUIET_DB2TEXI = @echo ' ' DB2TEXI $@;
|
||||
QUIET_MAKEINFO = @echo ' ' MAKEINFO $@;
|
||||
QUIET_DBLATEX = @echo ' ' DBLATEX $@;
|
||||
QUIET_XSLTPROC = @echo ' ' XSLTPROC $@;
|
||||
QUIET_GEN = @echo ' ' GEN $@;
|
||||
QUIET_LINT = @echo ' ' LINT $@;
|
||||
QUIET_STDERR = 2> /dev/null
|
||||
QUIET_SUBDIR0 = +@subdir=
|
||||
QUIET_SUBDIR1 = ;$(NO_SUBDIR) echo ' ' SUBDIR $$subdir; \
|
||||
$(MAKE) $(PRINT_DIR) -C $$subdir
|
||||
export V
|
||||
endif
|
||||
endif
|
||||
|
||||
all: html man
|
||||
|
||||
html: $(DOC_HTML)
|
||||
@ -284,7 +261,7 @@ install-html: html
|
||||
../GIT-VERSION-FILE: FORCE
|
||||
$(QUIET_SUBDIR0)../ $(QUIET_SUBDIR1) GIT-VERSION-FILE
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(filter-out lint-docs clean,$(MAKECMDGOALS)),)
|
||||
-include ../GIT-VERSION-FILE
|
||||
endif
|
||||
|
||||
@ -343,6 +320,7 @@ GIT-ASCIIDOCFLAGS: FORCE
|
||||
fi
|
||||
|
||||
clean:
|
||||
$(RM) -rf .build/
|
||||
$(RM) *.xml *.xml+ *.html *.html+ *.1 *.5 *.7
|
||||
$(RM) *.texi *.texi+ *.texi++ git.info gitman.info
|
||||
$(RM) *.pdf
|
||||
@ -412,7 +390,7 @@ gitman.texi: $(MAN_XML) cat-texi.perl texi.xsl
|
||||
$(RM) $@+
|
||||
|
||||
gitman.info: gitman.texi
|
||||
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate $*.texi
|
||||
$(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate $<
|
||||
|
||||
$(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
|
||||
$(QUIET_DB2TEXI)$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@
|
||||
@ -456,21 +434,46 @@ quick-install-html: require-htmlrepo
|
||||
print-man1:
|
||||
@for i in $(MAN1_TXT); do echo $$i; done
|
||||
|
||||
lint-docs::
|
||||
$(QUIET_LINT)$(PERL_PATH) lint-gitlink.perl \
|
||||
## Lint: gitlink
|
||||
LINT_DOCS_GITLINK = $(patsubst %.txt,.build/lint-docs/gitlink/%.ok,$(HOWTO_TXT) $(DOC_DEP_TXT))
|
||||
$(LINT_DOCS_GITLINK): lint-gitlink.perl
|
||||
$(LINT_DOCS_GITLINK): .build/lint-docs/gitlink/%.ok: %.txt
|
||||
$(call mkdir_p_parent_template)
|
||||
$(QUIET_LINT_GITLINK)$(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);
|
||||
--section=7 $(MAN7_TXT) >$@
|
||||
.PHONY: lint-docs-gitlink
|
||||
lint-docs-gitlink: $(LINT_DOCS_GITLINK)
|
||||
|
||||
## Lint: man-end-blurb
|
||||
LINT_DOCS_MAN_END_BLURB = $(patsubst %.txt,.build/lint-docs/man-end-blurb/%.ok,$(MAN_TXT))
|
||||
$(LINT_DOCS_MAN_END_BLURB): lint-man-end-blurb.perl
|
||||
$(LINT_DOCS_MAN_END_BLURB): .build/lint-docs/man-end-blurb/%.ok: %.txt
|
||||
$(call mkdir_p_parent_template)
|
||||
$(QUIET_LINT_MANEND)$(PERL_PATH) lint-man-end-blurb.perl $< >$@
|
||||
.PHONY: lint-docs-man-end-blurb
|
||||
|
||||
## Lint: man-section-order
|
||||
LINT_DOCS_MAN_SECTION_ORDER = $(patsubst %.txt,.build/lint-docs/man-section-order/%.ok,$(MAN_TXT))
|
||||
$(LINT_DOCS_MAN_SECTION_ORDER): lint-man-section-order.perl
|
||||
$(LINT_DOCS_MAN_SECTION_ORDER): .build/lint-docs/man-section-order/%.ok: %.txt
|
||||
$(call mkdir_p_parent_template)
|
||||
$(QUIET_LINT_MANSEC)$(PERL_PATH) lint-man-section-order.perl $< >$@
|
||||
.PHONY: lint-docs-man-section-order
|
||||
lint-docs-man-section-order: $(LINT_DOCS_MAN_SECTION_ORDER)
|
||||
|
||||
## Lint: list of targets above
|
||||
.PHONY: lint-docs
|
||||
lint-docs: lint-docs-gitlink
|
||||
lint-docs: lint-docs-man-end-blurb
|
||||
lint-docs: lint-docs-man-section-order
|
||||
|
||||
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
|
||||
|
@ -905,19 +905,34 @@ Sending emails with Git is a two-part process; before you can prepare the emails
|
||||
themselves, you'll need to prepare the patches. Luckily, this is pretty simple:
|
||||
|
||||
----
|
||||
$ git format-patch --cover-letter -o psuh/ master..psuh
|
||||
$ git format-patch --cover-letter -o psuh/ --base=auto psuh@{u}..psuh
|
||||
----
|
||||
|
||||
The `--cover-letter` parameter tells `format-patch` to create a cover letter
|
||||
template for you. You will need to fill in the template before you're ready
|
||||
to send - but for now, the template will be next to your other patches.
|
||||
. The `--cover-letter` option tells `format-patch` to create a
|
||||
cover letter template for you. You will need to fill in the
|
||||
template before you're ready to send - but for now, the template
|
||||
will be next to your other patches.
|
||||
|
||||
The `-o psuh/` parameter tells `format-patch` to place the patch files into a
|
||||
directory. This is useful because `git send-email` can take a directory and
|
||||
send out all the patches from there.
|
||||
. The `-o psuh/` option tells `format-patch` to place the patch
|
||||
files into a directory. This is useful because `git send-email`
|
||||
can take a directory and send out all the patches from there.
|
||||
|
||||
`master..psuh` tells `format-patch` to generate patches for the difference
|
||||
between `master` and `psuh`. It will make one patch file per commit. After you
|
||||
. The `--base=auto` option tells the command to record the "base
|
||||
commit", on which the recipient is expected to apply the patch
|
||||
series. The `auto` value will cause `format-patch` to compute
|
||||
the base commit automatically, which is the merge base of tip
|
||||
commit of the remote-tracking branch and the specified revision
|
||||
range.
|
||||
|
||||
. The `psuh@{u}..psuh` option tells `format-patch` to generate
|
||||
patches for the commits you created on the `psuh` branch since it
|
||||
forked from its upstream (which is `origin/master` if you
|
||||
followed the example in the "Set up your workspace" section). If
|
||||
you are already on the `psuh` branch, you can just say `@{u}`,
|
||||
which means "commits on the current branch since it forked from
|
||||
its upstream", which is the same thing.
|
||||
|
||||
The command will make one patch file per commit. After you
|
||||
run, you can go have a look at each of the patches with your favorite text
|
||||
editor and make sure everything looks alright; however, it's not recommended to
|
||||
make code fixups via the patch file. It's a better idea to make the change the
|
||||
@ -1029,22 +1044,42 @@ kidding - be patient!)
|
||||
[[v2-git-send-email]]
|
||||
=== Sending v2
|
||||
|
||||
Skip ahead to <<reviewing,Responding to Reviews>> for information on how to
|
||||
handle comments from reviewers. Continue this section when your topic branch is
|
||||
shaped the way you want it to look for your patchset v2.
|
||||
This section will focus on how to send a v2 of your patchset. To learn what
|
||||
should go into v2, skip ahead to <<reviewing,Responding to Reviews>> for
|
||||
information on how to handle comments from reviewers.
|
||||
|
||||
When you're ready with the next iteration of your patch, the process is fairly
|
||||
similar.
|
||||
|
||||
First, generate your v2 patches again:
|
||||
We'll reuse our `psuh` topic branch for v2. Before we make any changes, we'll
|
||||
mark the tip of our v1 branch for easy reference:
|
||||
|
||||
----
|
||||
$ git format-patch -v2 --cover-letter -o psuh/ master..psuh
|
||||
$ git checkout psuh
|
||||
$ git branch psuh-v1
|
||||
----
|
||||
|
||||
This will add your v2 patches, all named like `v2-000n-my-commit-subject.patch`,
|
||||
to the `psuh/` directory. You may notice that they are sitting alongside the v1
|
||||
patches; that's fine, but be careful when you are ready to send them.
|
||||
Refine your patch series by using `git rebase -i` to adjust commits based upon
|
||||
reviewer comments. Once the patch series is ready for submission, generate your
|
||||
patches again, but with some new flags:
|
||||
|
||||
----
|
||||
$ git format-patch -v2 --cover-letter -o psuh/ --range-diff master..psuh-v1 master..
|
||||
----
|
||||
|
||||
The `--range-diff master..psuh-v1` parameter tells `format-patch` to include a
|
||||
range-diff between `psuh-v1` and `psuh` in the cover letter (see
|
||||
linkgit:git-range-diff[1]). This helps tell reviewers about the differences
|
||||
between your v1 and v2 patches.
|
||||
|
||||
The `-v2` parameter tells `format-patch` to output your patches
|
||||
as version "2". For instance, you may notice that your v2 patches are
|
||||
all named like `v2-000n-my-commit-subject.patch`. `-v2` will also format
|
||||
your patches by prefixing them with "[PATCH v2]" instead of "[PATCH]",
|
||||
and your range-diff will be prefaced with "Range-diff against v1".
|
||||
|
||||
Afer you run this command, `format-patch` will output the patches to the `psuh/`
|
||||
directory, alongside the v1 patches. Using a single directory makes it easy to
|
||||
refer to the old v1 patches while proofreading the v2 patches, but you will need
|
||||
to be careful to send out only the v2 patches. We will use a pattern like
|
||||
"psuh/v2-*.patch" (not "psuh/*.patch", which would match v1 and v2 patches).
|
||||
|
||||
Edit your cover letter again. Now is a good time to mention what's different
|
||||
between your last version and now, if it's something significant. You do not
|
||||
@ -1082,7 +1117,7 @@ to the command:
|
||||
----
|
||||
$ git send-email --to=target@example.com
|
||||
--in-reply-to="<foo.12345.author@example.com>"
|
||||
psuh/v2*
|
||||
psuh/v2-*.patch
|
||||
----
|
||||
|
||||
[[single-patch]]
|
||||
|
@ -58,14 +58,19 @@ running, enable trace output by setting the environment variable `GIT_TRACE`.
|
||||
|
||||
Add usage text and `-h` handling, like all subcommands should consistently do
|
||||
(our test suite will notice and complain if you fail to do so).
|
||||
We'll need to include the `parse-options.h` header.
|
||||
|
||||
----
|
||||
#include "parse-options.h"
|
||||
|
||||
...
|
||||
|
||||
int cmd_walken(int argc, const char **argv, const char *prefix)
|
||||
{
|
||||
const char * const walken_usage[] = {
|
||||
N_("git walken"),
|
||||
NULL,
|
||||
}
|
||||
};
|
||||
struct option options[] = {
|
||||
OPT_END()
|
||||
};
|
||||
@ -195,9 +200,14 @@ Similarly to the default values, we don't have anything to do here yet
|
||||
ourselves; however, we should call `git_default_config()` if we aren't calling
|
||||
any other existing config callbacks.
|
||||
|
||||
Add a new function to `builtin/walken.c`:
|
||||
Add a new function to `builtin/walken.c`.
|
||||
We'll also need to include the `config.h` header:
|
||||
|
||||
----
|
||||
#include "config.h"
|
||||
|
||||
...
|
||||
|
||||
static int git_walken_config(const char *var, const char *value, void *cb)
|
||||
{
|
||||
/*
|
||||
@ -229,8 +239,14 @@ typically done by calling `repo_init_revisions()` with the repository you intend
|
||||
to target, as well as the `prefix` argument of `cmd_walken` and your `rev_info`
|
||||
struct.
|
||||
|
||||
Add the `struct rev_info` and the `repo_init_revisions()` call:
|
||||
Add the `struct rev_info` and the `repo_init_revisions()` call.
|
||||
We'll also need to include the `revision.h` header:
|
||||
|
||||
----
|
||||
#include "revision.h"
|
||||
|
||||
...
|
||||
|
||||
int cmd_walken(int argc, const char **argv, const char *prefix)
|
||||
{
|
||||
/* This can go wherever you like in your declarations.*/
|
||||
@ -506,24 +522,25 @@ function shows that the all-object walk is being performed by
|
||||
`traverse_commit_list()` or `traverse_commit_list_filtered()`. Those two
|
||||
functions reside in `list-objects.c`; examining the source shows that, despite
|
||||
the name, these functions traverse all kinds of objects. Let's have a look at
|
||||
the arguments to `traverse_commit_list_filtered()`, which are a superset of the
|
||||
arguments to the unfiltered version.
|
||||
the arguments to `traverse_commit_list()`.
|
||||
|
||||
- `struct list_objects_filter_options *filter_options`: This is a struct which
|
||||
stores a filter-spec as outlined in `Documentation/rev-list-options.txt`.
|
||||
- `struct rev_info *revs`: This is the `rev_info` used for the walk.
|
||||
- `struct rev_info *revs`: This is the `rev_info` used for the walk. If
|
||||
its `filter` member is not `NULL`, then `filter` contains information for
|
||||
how to filter the object list.
|
||||
- `show_commit_fn show_commit`: A callback which will be used to handle each
|
||||
individual commit object.
|
||||
- `show_object_fn show_object`: A callback which will be used to handle each
|
||||
non-commit object (so each blob, tree, or tag).
|
||||
- `void *show_data`: A context buffer which is passed in turn to `show_commit`
|
||||
and `show_object`.
|
||||
|
||||
In addition, `traverse_commit_list_filtered()` has an additional paramter:
|
||||
|
||||
- `struct oidset *omitted`: A linked-list of object IDs which the provided
|
||||
filter caused to be omitted.
|
||||
|
||||
It looks like this `traverse_commit_list_filtered()` uses callbacks we provide
|
||||
instead of needing us to call it repeatedly ourselves. Cool! Let's add the
|
||||
callbacks first.
|
||||
It looks like these methods use callbacks we provide instead of needing us
|
||||
to call it repeatedly ourselves. Cool! Let's add the callbacks first.
|
||||
|
||||
For the sake of this tutorial, we'll simply keep track of how many of each kind
|
||||
of object we find. At file scope in `builtin/walken.c` add the following
|
||||
@ -624,9 +641,14 @@ static void walken_object_walk(struct rev_info *rev)
|
||||
----
|
||||
|
||||
Let's start by calling just the unfiltered walk and reporting our counts.
|
||||
Complete your implementation of `walken_object_walk()`:
|
||||
Complete your implementation of `walken_object_walk()`.
|
||||
We'll also need to include the `list-objects.h` header.
|
||||
|
||||
----
|
||||
#include "list-objects.h"
|
||||
|
||||
...
|
||||
|
||||
traverse_commit_list(rev, walken_show_commit, walken_show_object, NULL);
|
||||
|
||||
printf("commits %d\nblobs %d\ntags %d\ntrees %d\n", commit_count,
|
||||
@ -691,20 +713,9 @@ 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
|
||||
`struct list_objects_filter_options` at the top of the function.
|
||||
|
||||
----
|
||||
static void walken_object_walk(struct rev_info *rev)
|
||||
{
|
||||
struct list_objects_filter_options filter_options = {};
|
||||
|
||||
...
|
||||
----
|
||||
|
||||
For now, we are not going to track the omitted objects, so we'll replace those
|
||||
parameters with `NULL`. For the sake of simplicity, we'll add a simple
|
||||
build-time branch to use our filter or not. Replace the line calling
|
||||
build-time branch to use our filter or not. Preface the line calling
|
||||
`traverse_commit_list()` with the following, which will remind us which kind of
|
||||
walk we've just performed:
|
||||
|
||||
@ -712,19 +723,17 @@ walk we've just performed:
|
||||
if (0) {
|
||||
/* Unfiltered: */
|
||||
trace_printf(_("Unfiltered object walk.\n"));
|
||||
traverse_commit_list(rev, walken_show_commit,
|
||||
walken_show_object, NULL);
|
||||
} else {
|
||||
trace_printf(
|
||||
_("Filtered object walk with filterspec 'tree:1'.\n"));
|
||||
parse_list_objects_filter(&filter_options, "tree:1");
|
||||
|
||||
traverse_commit_list_filtered(&filter_options, rev,
|
||||
walken_show_commit, walken_show_object, NULL, NULL);
|
||||
CALLOC_ARRAY(rev->filter, 1);
|
||||
parse_list_objects_filter(rev->filter, "tree:1");
|
||||
}
|
||||
traverse_commit_list(rev, walken_show_commit,
|
||||
walken_show_object, NULL);
|
||||
----
|
||||
|
||||
`struct list_objects_filter_options` is usually built directly from a command
|
||||
The `rev->filter` member is usually built directly from a command
|
||||
line argument, so the module provides an easy way to build one from a string.
|
||||
Even though we aren't taking user input right now, we can still build one with
|
||||
a hardcoded string using `parse_list_objects_filter()`.
|
||||
@ -763,7 +772,7 @@ object:
|
||||
----
|
||||
...
|
||||
|
||||
traverse_commit_list_filtered(&filter_options, rev,
|
||||
traverse_commit_list_filtered(rev,
|
||||
walken_show_commit, walken_show_object, NULL, &omitted);
|
||||
|
||||
...
|
||||
@ -779,7 +788,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);
|
||||
----
|
||||
|
||||
|
24
Documentation/RelNotes/2.30.3.txt
Normal file
24
Documentation/RelNotes/2.30.3.txt
Normal file
@ -0,0 +1,24 @@
|
||||
Git v2.30.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release addresses the security issue CVE-2022-24765.
|
||||
|
||||
Fixes since v2.30.2
|
||||
-------------------
|
||||
|
||||
* Build fix on Windows.
|
||||
|
||||
* Fix `GIT_CEILING_DIRECTORIES` with Windows-style root directories.
|
||||
|
||||
* CVE-2022-24765:
|
||||
On multi-user machines, Git users might find themselves
|
||||
unexpectedly in a Git worktree, e.g. when another user created a
|
||||
repository in `C:\.git`, in a mounted network drive or in a
|
||||
scratch space. Merely having a Git-aware prompt that runs `git
|
||||
status` (or `git diff`) and navigating to a directory which is
|
||||
supposedly not a Git worktree, or opening such a directory in an
|
||||
editor or IDE such as VS Code or Atom, will potentially run
|
||||
commands defined by that other user.
|
||||
|
||||
Credit for finding this vulnerability goes to 俞晨东; The fix was
|
||||
authored by Johannes Schindelin.
|
21
Documentation/RelNotes/2.30.4.txt
Normal file
21
Documentation/RelNotes/2.30.4.txt
Normal file
@ -0,0 +1,21 @@
|
||||
Git v2.30.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release contains minor fix-ups for the changes that went into
|
||||
Git 2.30.3, which was made to address CVE-2022-24765.
|
||||
|
||||
* The code that was meant to parse the new `safe.directory`
|
||||
configuration variable was not checking what configuration
|
||||
variable was being fed to it, which has been corrected.
|
||||
|
||||
* '*' can be used as the value for the `safe.directory` variable to
|
||||
signal that the user considers that any directory is safe.
|
||||
|
||||
|
||||
|
||||
Derrick Stolee (2):
|
||||
t0033: add tests for safe.directory
|
||||
setup: opt-out of check with safe.directory=*
|
||||
|
||||
Matheus Valadares (1):
|
||||
setup: fix safe.directory key not being checked
|
12
Documentation/RelNotes/2.30.5.txt
Normal file
12
Documentation/RelNotes/2.30.5.txt
Normal file
@ -0,0 +1,12 @@
|
||||
Git v2.30.5 Release Notes
|
||||
=========================
|
||||
|
||||
This release contains minor fix-ups for the changes that went into
|
||||
Git 2.30.3 and 2.30.4, addressing CVE-2022-29187.
|
||||
|
||||
* The safety check that verifies a safe ownership of the Git
|
||||
worktree is now extended to also cover the ownership of the Git
|
||||
directory (and the `.git` file, if there is any).
|
||||
|
||||
Carlo Marcelo Arenas Belón (1):
|
||||
setup: tighten ownership checks post CVE-2022-24765
|
6
Documentation/RelNotes/2.31.2.txt
Normal file
6
Documentation/RelNotes/2.31.2.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.31.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.3 to address
|
||||
the security issue CVE-2022-24765; see the release notes for that
|
||||
version for details.
|
4
Documentation/RelNotes/2.31.3.txt
Normal file
4
Documentation/RelNotes/2.31.3.txt
Normal file
@ -0,0 +1,4 @@
|
||||
Git Documentation/RelNotes/2.31.3.txt Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.31.3.
|
6
Documentation/RelNotes/2.31.4.txt
Normal file
6
Documentation/RelNotes/2.31.4.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.31.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5 to address
|
||||
the security issue CVE-2022-29187; see the release notes for that
|
||||
version for details.
|
6
Documentation/RelNotes/2.32.1.txt
Normal file
6
Documentation/RelNotes/2.32.1.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.32.1 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.3 and
|
||||
v2.31.2 to address the security issue CVE-2022-24765; see the
|
||||
release notes for these versions for details.
|
4
Documentation/RelNotes/2.32.2.txt
Normal file
4
Documentation/RelNotes/2.32.2.txt
Normal file
@ -0,0 +1,4 @@
|
||||
Git Documentation/RelNotes/2.32.2.txt Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.32.2.
|
6
Documentation/RelNotes/2.32.3.txt
Normal file
6
Documentation/RelNotes/2.32.3.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.32.3 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5 and
|
||||
v2.31.4 to address the security issue CVE-2022-29187; see the
|
||||
release notes for these versions for details.
|
@ -1,18 +1,6 @@
|
||||
Git 2.33 Release Notes
|
||||
======================
|
||||
|
||||
Backward compatibility notes
|
||||
----------------------------
|
||||
|
||||
* The "-m" option in "git log -m" that does not specify which format,
|
||||
if any, of diff is desired did not have any visible effect; it now
|
||||
implies some form of diff (by default "--patch") is produced.
|
||||
|
||||
You can disable the diff output with "git log -m --no-patch", but
|
||||
then there probably isn't much point in passing "-m" in the first
|
||||
place ;-).
|
||||
|
||||
|
||||
Updates since Git 2.32
|
||||
----------------------
|
||||
|
||||
@ -24,10 +12,6 @@ UI, Workflows & Features
|
||||
"smtp-server" that is meant to name the server to instead name the
|
||||
command to talk to the server.
|
||||
|
||||
* The "-m" option in "git log -m" that does not specify which format,
|
||||
if any, of diff is desired did not have any visible effect; it now
|
||||
implies some form of diff (by default "--patch") is produced.
|
||||
|
||||
* The userdiff pattern for C# learned the token "record".
|
||||
|
||||
* "git rev-list" learns to omit the "commit <object-name>" header
|
||||
@ -48,7 +32,7 @@ Performance, Internal Implementation, Development Support etc.
|
||||
reduce code duplication.
|
||||
|
||||
* Repeated rename detections in a sequence of mergy operations have
|
||||
been optimize out.
|
||||
been optimized out for the 'ort' merge strategy.
|
||||
|
||||
* Preliminary clean-up of tests before the main reftable changes
|
||||
hits the codebase.
|
||||
@ -98,6 +82,11 @@ Performance, Internal Implementation, Development Support etc.
|
||||
* "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
|
||||
-----------------
|
||||
@ -237,6 +226,14 @@ Fixes since v2.32
|
||||
* 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).
|
||||
@ -278,3 +275,5 @@ Fixes since v2.32
|
||||
(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.
|
15
Documentation/RelNotes/2.33.2.txt
Normal file
15
Documentation/RelNotes/2.33.2.txt
Normal file
@ -0,0 +1,15 @@
|
||||
Git v2.33.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.3, v2.31.2
|
||||
and v2.32.1 to address the security issue CVE-2022-24765; see
|
||||
the release notes for these versions for details.
|
||||
|
||||
In addition, it contains the following fixes:
|
||||
|
||||
* Squelch over-eager warning message added during this cycle.
|
||||
|
||||
* A bug in "git rebase -r" has been fixed.
|
||||
|
||||
* One CI task based on Fedora image noticed a not-quite-kosher
|
||||
construct recently, which has been corrected.
|
4
Documentation/RelNotes/2.33.3.txt
Normal file
4
Documentation/RelNotes/2.33.3.txt
Normal file
@ -0,0 +1,4 @@
|
||||
Git Documentation/RelNotes/2.33.3.txt Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.33.3.
|
6
Documentation/RelNotes/2.33.4.txt
Normal file
6
Documentation/RelNotes/2.33.4.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.33.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5, v2.31.4
|
||||
and v2.32.3 to address the security issue CVE-2022-29187; see
|
||||
the release notes for these versions for details.
|
438
Documentation/RelNotes/2.34.0.txt
Normal file
438
Documentation/RelNotes/2.34.0.txt
Normal file
@ -0,0 +1,438 @@
|
||||
Git 2.34 Release Notes
|
||||
======================
|
||||
|
||||
Updates since Git 2.33
|
||||
----------------------
|
||||
|
||||
Backward compatibility notes
|
||||
|
||||
* The "--preserve-merges" option of "git rebase" has been removed.
|
||||
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* Pathname expansion (like "~username/") learned a way to specify a
|
||||
location relative to Git installation (e.g. its $sharedir which is
|
||||
$(prefix)/share), with "%(prefix)".
|
||||
|
||||
* The `ort` strategy is used instead of `recursive` as the default
|
||||
merge strategy.
|
||||
|
||||
* The userdiff pattern for "java" language has been updated.
|
||||
|
||||
* "git rebase" by default skips changes that are equivalent to
|
||||
commits that are already in the history the branch is rebased onto;
|
||||
give messages when this happens to let the users be aware of
|
||||
skipped commits, and also teach them how to tell "rebase" to keep
|
||||
duplicated changes.
|
||||
|
||||
* The advice message that "git cherry-pick" gives when it asks
|
||||
conflicted replay of a commit to be resolved by the end user has
|
||||
been updated.
|
||||
|
||||
* After "git clone --recurse-submodules", all submodules are cloned
|
||||
but they are not by default recursed into by other commands. With
|
||||
submodule.stickyRecursiveClone configuration set, submodule.recurse
|
||||
configuration is set to true in a repository created by "clone"
|
||||
with "--recurse-submodules" option.
|
||||
|
||||
* The logic for auto-correction of misspelt subcommands learned to go
|
||||
interactive when the help.autocorrect configuration variable is set
|
||||
to 'prompt'.
|
||||
|
||||
* "git maintenance" scheduler learned to use systemd timers as a
|
||||
possible backend.
|
||||
|
||||
* "git diff --submodule=diff" showed failure from run_command() when
|
||||
trying to run diff inside a submodule, when the user manually
|
||||
removes the submodule directory.
|
||||
|
||||
* "git bundle unbundle" learned to show progress display.
|
||||
|
||||
* In cone mode, the sparse-index code path learned to remove ignored
|
||||
files (like build artifacts) outside the sparse cone, allowing the
|
||||
entire directory outside the sparse cone to be removed, which is
|
||||
especially useful when the sparse patterns change.
|
||||
|
||||
* Taking advantage of the CGI interface, http-backend has been
|
||||
updated to enable protocol v2 automatically when the other side
|
||||
asks for it.
|
||||
|
||||
* The credential-cache helper has been adjusted to Windows.
|
||||
|
||||
* The error in "git help no-such-git-command" is handled better.
|
||||
|
||||
* The unicode character width table (used for output alignment) has
|
||||
been updated.
|
||||
|
||||
* The ref iteration code used to optionally allow dangling refs to be
|
||||
shown, which has been tightened up.
|
||||
|
||||
* "git add", "git mv", and "git rm" have been adjusted to avoid
|
||||
updating paths outside of the sparse-checkout definition unless
|
||||
the user specifies a "--sparse" option.
|
||||
|
||||
* "git repack" has been taught to generate multi-pack reachability
|
||||
bitmaps.
|
||||
|
||||
* "git fsck" has been taught to report mismatch between expected and
|
||||
actual types of an object better.
|
||||
|
||||
* In addition to GnuPG, ssh public crypto can be used for object and
|
||||
push-cert signing. Note that this feature cannot be used with
|
||||
ssh-keygen from OpenSSH 8.7, whose support for it is broken. Avoid
|
||||
using it unless you update to OpenSSH 8.8.
|
||||
|
||||
* "git log --grep=string --author=name" learns to highlight hits just
|
||||
like "git grep string" does.
|
||||
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* "git bisect" spawned "git show-branch" only to pretty-print the
|
||||
title of the commit after checking out the next version to be
|
||||
tested; this has been rewritten in C.
|
||||
|
||||
* "git add" can work better with the sparse index.
|
||||
|
||||
* Support for ancient versions of cURL library (pre 7.19.4) has been
|
||||
dropped.
|
||||
|
||||
* A handful of tests that assumed implementation details of files
|
||||
backend for refs have been cleaned up.
|
||||
|
||||
* trace2 logs learned to show parent process name to see in what
|
||||
context Git was invoked.
|
||||
|
||||
* Loading of ref tips to prepare for common ancestry negotiation in
|
||||
"git fetch-pack" has been optimized by taking advantage of the
|
||||
commit graph when available.
|
||||
|
||||
* Remind developers that the userdiff patterns should be kept simple
|
||||
and permissive, assuming that the contents they apply are always
|
||||
syntactically correct.
|
||||
|
||||
* The current implementation of GIT_TEST_FAIL_PREREQS is broken in
|
||||
that checking for the lack of a prerequisite would not work. Avoid
|
||||
the use of "if ! test_have_prereq X" in a test script.
|
||||
|
||||
* The revision traversal API has been optimized by taking advantage
|
||||
of the commit-graph, when available, to determine if a commit is
|
||||
reachable from any of the existing refs.
|
||||
|
||||
* "git fetch --quiet" optimization to avoid useless computation of
|
||||
info that will never be displayed.
|
||||
|
||||
* Callers from older advice_config[] based API has been updated to
|
||||
use the newer advice_if_enabled() and advice_enabled() API.
|
||||
|
||||
* Teach "test_pause" and "debug" helpers to allow using the HOME and
|
||||
TERM environment variables the user usually uses.
|
||||
|
||||
* "make INSTALL_STRIP=-s install" allows the installation step to use
|
||||
"install -s" to strip the binaries as they get installed.
|
||||
|
||||
* Code that handles large number of refs in the "git fetch" code
|
||||
path has been optimized.
|
||||
|
||||
* The reachability bitmap file used to be generated only for a single
|
||||
pack, but now we've learned to generate bitmaps for history that
|
||||
span across multiple packfiles.
|
||||
|
||||
* The code to make "git grep" recurse into submodules has been
|
||||
updated to migrate away from the "add submodule's object store as
|
||||
an alternate object store" mechanism (which is suboptimal).
|
||||
|
||||
* The tracing of process ancestry information has been enhanced.
|
||||
|
||||
* Reduce number of write(2) system calls while sending the
|
||||
ref advertisement.
|
||||
|
||||
* Update the build procedure to use the "-pedantic" build when
|
||||
DEVELOPER makefile macro is in effect.
|
||||
|
||||
* Large part of "git submodule add" gets rewritten in C.
|
||||
|
||||
* The run-command API has been updated so that the callers can easily
|
||||
ask the file descriptors open for packfiles to be closed immediately
|
||||
before spawning commands that may trigger auto-gc.
|
||||
|
||||
* An oddball OPTION_ARGUMENT feature has been removed from the
|
||||
parse-options API.
|
||||
|
||||
* The mergesort implementation used to sort linked list has been
|
||||
optimized.
|
||||
|
||||
* Remove external declaration of functions that no longer exist.
|
||||
|
||||
* "git multi-pack-index write --bitmap" learns to propagate the
|
||||
hashcache from original bitmap to resulting bitmap.
|
||||
|
||||
* CI learns to run the leak sanitizer builds.
|
||||
|
||||
* "git grep --recurse-submodules" takes trees and blobs from the
|
||||
submodule repository, but the textconv settings when processing a
|
||||
blob from the submodule is not taken from the submodule repository.
|
||||
A test is added to demonstrate the issue, without fixing it.
|
||||
|
||||
* Teach "git help -c" into helping the command line completion of
|
||||
configuration variables.
|
||||
|
||||
* When "git cmd -h" shows more than one line of usage text (e.g.
|
||||
the cmd subcommand may take sub-sub-command), parse-options API
|
||||
learned to align these lines, even across i18n/l10n.
|
||||
|
||||
* Prevent "make sparse" from running for the source files that
|
||||
haven't been modified.
|
||||
|
||||
* The code path to write a new version of .midx multi-pack index files
|
||||
has learned to release the mmaped memory holding the current
|
||||
version of .midx before removing them from the disk, as some
|
||||
platforms do not allow removal of a file that still has mapping.
|
||||
|
||||
* A new feature has been added to abort early in the test framework.
|
||||
|
||||
|
||||
Fixes since v2.33
|
||||
-----------------
|
||||
|
||||
* Input validation of "git pack-objects --stdin-packs" has been
|
||||
corrected.
|
||||
|
||||
* Bugfix for common ancestor negotiation recently introduced in "git
|
||||
push" code path.
|
||||
|
||||
* "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.
|
||||
|
||||
* 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. This fixes a regression caused by
|
||||
recent "-3way first and fall back to direct application" change.
|
||||
|
||||
* 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.
|
||||
|
||||
* A few kinds of changes "git status" can show were not documented.
|
||||
(merge d2a534c515 ja/doc-status-types-and-copies later to maint).
|
||||
|
||||
* The mergesort implementation used to sort linked list has been
|
||||
optimized.
|
||||
(merge c90cfc225b rs/mergesort later to maint).
|
||||
|
||||
* An editor session launched during a Git operation (e.g. during 'git
|
||||
commit') can leave the terminal in a funny state. The code path
|
||||
has updated to save the terminal state before, and restore it
|
||||
after, it spawns an editor.
|
||||
(merge 3d411afabc cm/save-restore-terminal later to maint).
|
||||
|
||||
* "git cat-file --batch" with the "--batch-all-objects" option is
|
||||
supposed to iterate over all the objects found in a repository, but
|
||||
it used to translate these object names using the replace mechanism,
|
||||
which defeats the point of enumerating all objects in the repository.
|
||||
This has been corrected.
|
||||
(merge bf972896d7 jk/cat-file-batch-all-wo-replace later to maint).
|
||||
|
||||
* Recent sparse-index work broke safety against attempts to add paths
|
||||
with trailing slashes to the index, which has been corrected.
|
||||
(merge c8ad9d04c6 rs/make-verify-path-really-verify-again later to maint).
|
||||
|
||||
* The "--color-lines" and "--color-by-age" options of "git blame"
|
||||
have been missing, which are now documented.
|
||||
(merge 8c32856133 bs/doc-blame-color-lines later to maint).
|
||||
|
||||
* The PATH used in CI job may be too wide and let incompatible dlls
|
||||
to be grabbed, which can cause the build&test to fail. Tighten it.
|
||||
(merge 7491ef6198 js/windows-ci-path-fix later to maint).
|
||||
|
||||
* Avoid performance measurements from getting ruined by gc and other
|
||||
housekeeping pauses interfering in the middle.
|
||||
(merge be79131a53 rs/disable-gc-during-perf-tests later to maint).
|
||||
|
||||
* Stop "git add --dry-run" from creating new blob and tree objects.
|
||||
(merge e578d0311d rs/add-dry-run-without-objects later to maint).
|
||||
|
||||
* "git commit" gave duplicated error message when the object store
|
||||
was unwritable, which has been corrected.
|
||||
(merge 4ef91a2d79 ab/fix-commit-error-message-upon-unwritable-object-store later to maint).
|
||||
|
||||
* Recent sparse-index addition, namely any use of index_name_pos(),
|
||||
can expand sparse index entries and breaks any code that walks
|
||||
cache-tree or existing index entries. One such instance of such a
|
||||
breakage has been corrected.
|
||||
|
||||
* The xxdiff difftool backend can exit with status 128, which the
|
||||
difftool-helper that launches the backend takes as a significant
|
||||
failure, when it is not significant at all. Work it around.
|
||||
(merge 571f4348dd da/mergetools-special-case-xxdiff-exit-128 later to maint).
|
||||
|
||||
* Improve test framework around unwritable directories.
|
||||
(merge 5d22e18965 ab/test-cleanly-recreate-trash-directory later to maint).
|
||||
|
||||
* "git push" client talking to an HTTP server did not diagnose the
|
||||
lack of the final status report from the other side correctly,
|
||||
which has been corrected.
|
||||
(merge c5c3486f38 jk/http-push-status-fix later to maint).
|
||||
|
||||
* Update "git archive" documentation and give explicit mention on the
|
||||
compression level for both zip and tar.gz format.
|
||||
(merge c4b208c309 bs/archive-doc-compression-level later to maint).
|
||||
|
||||
* Drop "git sparse-checkout" from the list of common commands.
|
||||
(merge 6a9a50a8af sg/sparse-index-not-that-common-a-command later to maint).
|
||||
|
||||
* "git branch -c/-m new old" was not described to copy config, which
|
||||
has been corrected.
|
||||
(merge 8252ec300e jc/branch-copy-doc later to maint).
|
||||
|
||||
* Squelch over-eager warning message added during this cycle.
|
||||
|
||||
* Fix long-standing shell syntax error in the completion script.
|
||||
(merge 46b0585286 re/completion-fix-test-equality later to maint).
|
||||
|
||||
* Teach "git commit-graph" command not to allow using replace objects
|
||||
at all, as we do not use the commit-graph at runtime when we see
|
||||
object replacement.
|
||||
(merge 095d112f8c ab/ignore-replace-while-working-on-commit-graph later to maint).
|
||||
|
||||
* "git pull --no-verify" did not affect the underlying "git merge".
|
||||
(merge 47bfdfb3fd ar/fix-git-pull-no-verify later to maint).
|
||||
|
||||
* One CI task based on Fedora image noticed a not-quite-kosher
|
||||
construct recently, which has been corrected.
|
||||
|
||||
* "git pull --ff-only" and "git pull --rebase --ff-only" should make
|
||||
it a no-op to attempt pulling from a remote that is behind us, but
|
||||
instead the command errored out by saying it was impossible to
|
||||
fast-forward, which may technically be true, but not a useful thing
|
||||
to diagnose as an error. This has been corrected.
|
||||
(merge 361cb52383 jc/fix-pull-ff-only-when-already-up-to-date later to maint).
|
||||
|
||||
* The way Cygwin emulates a unix-domain socket, on top of which the
|
||||
simple-ipc mechanism is implemented, can race with the program on
|
||||
the other side that wants to use the socket, and briefly make it
|
||||
appear as a regular file before lstat(2) starts reporting it as a
|
||||
socket. We now have a workaround on the side that connects to a
|
||||
unix domain socket.
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge f188160be9 ab/bundle-remove-verbose-option later to maint).
|
||||
(merge 8c6b4332b4 rs/close-pack-leakfix later to maint).
|
||||
(merge 51b04c05b7 bs/difftool-msg-tweak later to maint).
|
||||
(merge dd20e4a6db ab/make-compdb-fix later to maint).
|
||||
(merge 6ffb990dc4 os/status-docfix later to maint).
|
||||
(merge 100c2da2d3 rs/p3400-lose-tac later to maint).
|
||||
(merge 76f3b69896 tb/aggregate-ignore-leading-whitespaces later to maint).
|
||||
(merge 6e4fd8bfcd tz/doc-link-to-bundle-format-fix later to maint).
|
||||
(merge f6c013dfa1 jc/doc-commit-header-continuation-line later to maint).
|
||||
(merge ec9a37d69b ab/pkt-line-cleanup later to maint).
|
||||
(merge 8650c6298c ab/fix-make-lint-docs later to maint).
|
||||
(merge 1c720357ce ab/test-lib-diff-cleanup later to maint).
|
||||
(merge 6b615dbece ks/submodule-add-message-fix later to maint).
|
||||
(merge 203eb8381a jc/doc-format-patch-clarify-auto-base later to maint).
|
||||
(merge 559664c792 ab/test-lib later to maint).
|
23
Documentation/RelNotes/2.34.1.txt
Normal file
23
Documentation/RelNotes/2.34.1.txt
Normal file
@ -0,0 +1,23 @@
|
||||
Git v2.34.1 Release Notes
|
||||
=========================
|
||||
|
||||
This release is primarily to fix a handful of regressions in Git 2.34.
|
||||
|
||||
Fixes since v2.34
|
||||
-----------------
|
||||
|
||||
* "git grep" looking in a blob that has non-UTF8 payload was
|
||||
completely broken when linked with certain versions of PCREv2
|
||||
library in the latest release.
|
||||
|
||||
* "git pull" with any strategy when the other side is behind us
|
||||
should succeed as it is a no-op, but doesn't.
|
||||
|
||||
* An earlier change in 2.34.0 caused JGit application (that abused
|
||||
GIT_EDITOR mechanism when invoking "git config") to get stuck with
|
||||
a SIGTTOU signal; it has been reverted.
|
||||
|
||||
* An earlier change that broke .gitignore matching has been reverted.
|
||||
|
||||
* SubmittingPatches document gained a syntactically incorrect mark-up,
|
||||
which has been corrected.
|
6
Documentation/RelNotes/2.34.2.txt
Normal file
6
Documentation/RelNotes/2.34.2.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.34.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.3, v2.31.2,
|
||||
v2.32.1 and v2.33.2 to address the security issue CVE-2022-24765;
|
||||
see the release notes for these versions for details.
|
4
Documentation/RelNotes/2.34.3.txt
Normal file
4
Documentation/RelNotes/2.34.3.txt
Normal file
@ -0,0 +1,4 @@
|
||||
Git Documentation/RelNotes/2.34.3.txt Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.34.3.
|
6
Documentation/RelNotes/2.34.4.txt
Normal file
6
Documentation/RelNotes/2.34.4.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.34.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5, v2.31.4,
|
||||
v2.32.3 and v2.33.4 to address the security issue CVE-2022-29187;
|
||||
see the release notes for these versions for details.
|
412
Documentation/RelNotes/2.35.0.txt
Normal file
412
Documentation/RelNotes/2.35.0.txt
Normal file
@ -0,0 +1,412 @@
|
||||
Git 2.35 Release Notes
|
||||
======================
|
||||
|
||||
Updates since Git 2.34
|
||||
----------------------
|
||||
|
||||
Backward compatibility warts
|
||||
|
||||
* "_" is now treated as any other URL-valid characters in an URL when
|
||||
matching the per-URL configuration variable names.
|
||||
|
||||
* The color palette used by "git grep" has been updated to match that
|
||||
of GNU grep.
|
||||
|
||||
|
||||
Note to those who build from the source
|
||||
|
||||
* You may need to define NO_UNCOMPRESS2 Makefile macro if you build
|
||||
with zlib older than 1.2.9.
|
||||
|
||||
* If your compiler cannot grok C99, the build will fail. See the
|
||||
instruction at the beginning of git-compat-util.h if this happens
|
||||
to you.
|
||||
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* "git status --porcelain=v2" now show the number of stash entries
|
||||
with --show-stash like the normal output does.
|
||||
|
||||
* "git stash" learned the "--staged" option to stash away what has
|
||||
been added to the index (and nothing else).
|
||||
|
||||
* "git var GIT_DEFAULT_BRANCH" is a way to see what name is used for
|
||||
the newly created branch if "git init" is run.
|
||||
|
||||
* Various operating modes of "git reset" have been made to work
|
||||
better with the sparse index.
|
||||
|
||||
* "git submodule deinit" for a submodule whose .git metadata
|
||||
directory is embedded in its working tree refused to work, until
|
||||
the submodule gets converted to use the "absorbed" form where the
|
||||
metadata directory is stored in superproject, and a gitfile at the
|
||||
top-level of the working tree of the submodule points at it. The
|
||||
command is taught to convert such submodules to the absorbed form
|
||||
as needed.
|
||||
|
||||
* The completion script (in contrib/) learns that the "--date"
|
||||
option of commands from the "git log" family takes "human" and
|
||||
"auto" as valid values.
|
||||
|
||||
* "Zealous diff3" style of merge conflict presentation has been added.
|
||||
|
||||
* The "git log --format=%(describe)" placeholder has been extended to
|
||||
allow passing selected command-line options to the underlying "git
|
||||
describe" command.
|
||||
|
||||
* "default" and "reset" have been added to our color palette.
|
||||
|
||||
* The cryptographic signing using ssh keys can specify literal keys
|
||||
for keytypes whose name do not begin with the "ssh-" prefix by
|
||||
using the "key::" prefix mechanism (e.g. "key::ecdsa-sha2-nistp256").
|
||||
|
||||
* "git fetch" without the "--update-head-ok" option ought to protect
|
||||
a checked out branch from getting updated, to prevent the working
|
||||
tree that checks it out to go out of sync. The code was written
|
||||
before the use of "git worktree" got widespread, and only checked
|
||||
the branch that was checked out in the current worktree, which has
|
||||
been updated.
|
||||
|
||||
* "git name-rev" has been tweaked to give output that is shorter and
|
||||
easier to understand.
|
||||
|
||||
* "git apply" has been taught to ignore a message without a patch
|
||||
with the "--allow-empty" option. It also learned to honor the
|
||||
"--quiet" option given from the command line.
|
||||
|
||||
* The "init" and "set" subcommands in "git sparse-checkout" have been
|
||||
unified for a better user experience and performance.
|
||||
|
||||
* Many git commands that deal with working tree files try to remove a
|
||||
directory that becomes empty (i.e. "git switch" from a branch that
|
||||
has the directory to another branch that does not would attempt
|
||||
remove all files in the directory and the directory itself). This
|
||||
drops users into an unfamiliar situation if the command was run in
|
||||
a subdirectory that becomes subject to removal due to the command.
|
||||
The commands have been taught to keep an empty directory if it is
|
||||
the directory they were started in to avoid surprising users.
|
||||
|
||||
* "git am" learns "--empty=(stop|drop|keep)" option to tweak what is
|
||||
done to a piece of e-mail without a patch in it.
|
||||
|
||||
* The default merge message prepared by "git merge" records the name
|
||||
of the current branch; the name can be overridden with a new option
|
||||
to allow users to pretend a merge is made on a different branch.
|
||||
|
||||
* The way "git p4" shows file sizes in its output has been updated to
|
||||
use human-readable units.
|
||||
|
||||
* "git -c branch.autosetupmerge=inherit branch new old" makes "new"
|
||||
to have the same upstream as the "old" branch, instead of marking
|
||||
"old" itself as its upstream.
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* The use of errno as a means to carry the nature of error in the ref
|
||||
API implementation has been reworked and reduced.
|
||||
|
||||
* Teach and encourage first-time contributors to this project to
|
||||
state the base commit when they submit their topic.
|
||||
|
||||
* The command line completion for "git send-email" options have been
|
||||
tweaked to make it easier to keep it in sync with the command itself.
|
||||
|
||||
* Ensure that the sparseness of the in-core index matches the
|
||||
index.sparse configuration specified by the repository immediately
|
||||
after the on-disk index file is read.
|
||||
|
||||
* Code clean-up to eventually allow information on remotes defined
|
||||
for an arbitrary repository to be read.
|
||||
|
||||
* Build optimization.
|
||||
|
||||
* Tighten code for testing pack-bitmap.
|
||||
|
||||
* Weather balloon to break people with compilers that do not support
|
||||
C99.
|
||||
|
||||
* The "reftable" backend for the refs API, without integrating into
|
||||
the refs subsystem, has been added.
|
||||
|
||||
* More tests are marked as leak-free.
|
||||
|
||||
* The test framework learns to list unsatisfied test prerequisites,
|
||||
and optionally error out when prerequisites that are expected to be
|
||||
satisfied are not.
|
||||
|
||||
* The default setting for trace2 event nesting was too low to cause
|
||||
test failures, which is worked around by bumping it up in the test
|
||||
framework.
|
||||
|
||||
* Drop support for TravisCI and update test workflows at GitHub.
|
||||
|
||||
* Many tests that used to need GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
|
||||
mechanism to force "git" to use 'master' as the default name for
|
||||
the initial branch no longer need it; the use of the mechanism from
|
||||
them have been removed.
|
||||
|
||||
* Allow running our tests while disabling fsync.
|
||||
|
||||
* Document the parameters given to the reflog entry iterator callback
|
||||
functions.
|
||||
(merge e6e94f34b2 jc/reflog-iterator-callback-doc later to maint).
|
||||
|
||||
* The test helper for refs subsystem learned to write bogus and/or
|
||||
nonexistent object name to refs to simulate error situations we
|
||||
want to test Git in.
|
||||
|
||||
* "diff --histogram" optimization.
|
||||
|
||||
* Weather balloon to find compilers that do not grok variable
|
||||
declaration in the for() loop.
|
||||
|
||||
* diff and blame commands have been taught to work better with sparse
|
||||
index.
|
||||
|
||||
* The chainlint test script linter in the test suite has been updated.
|
||||
|
||||
* The DEVELOPER=yes build uses -std=gnu99 now.
|
||||
|
||||
* "git format-patch" uses a single rev_info instance and then exits.
|
||||
Mark the structure with UNLEAK() macro to squelch leak sanitizer.
|
||||
|
||||
* New interface into the tmp-objdir API to help in-core use of the
|
||||
quarantine feature.
|
||||
|
||||
* Broken &&-chains in the test scripts have been corrected.
|
||||
|
||||
* The RCS keyword substitution in "git p4" used to be done assuming
|
||||
that the contents are UTF-8 text, which can trigger decoding
|
||||
errors. We now treat the contents as a bytestring for robustness
|
||||
and correctness.
|
||||
|
||||
* The conditions to choose different definitions of the FLEX_ARRAY
|
||||
macro for vendor compilers has been simplified to make it easier to
|
||||
maintain.
|
||||
|
||||
* Correctness and performance update to "diff --color-moved" feature.
|
||||
|
||||
* "git upload-pack" (the other side of "git fetch") used a 8kB buffer
|
||||
but most of its payload came on 64kB "packets". The buffer size
|
||||
has been enlarged so that such a packet fits.
|
||||
|
||||
* "git fetch" and "git pull" are now declared sparse-index clean.
|
||||
Also "git ls-files" learns the "--sparse" option to help debugging.
|
||||
|
||||
* Similar message templates have been consolidated so that
|
||||
translators need to work on fewer number of messages.
|
||||
|
||||
|
||||
Fixes since v2.34
|
||||
-----------------
|
||||
|
||||
* "git grep" looking in a blob that has non-UTF8 payload was
|
||||
completely broken when linked with certain versions of PCREv2
|
||||
library in the latest release.
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
|
||||
* "git pull" with any strategy when the other side is behind us
|
||||
should succeed as it is a no-op, but doesn't.
|
||||
|
||||
* An earlier change in 2.34.0 caused JGit application (that abused
|
||||
GIT_EDITOR mechanism when invoking "git config") to get stuck with
|
||||
a SIGTTOU signal; it has been reverted.
|
||||
|
||||
* An earlier change that broke .gitignore matching has been reverted.
|
||||
|
||||
* Things like "git -c branch.sort=bogus branch new HEAD", i.e. the
|
||||
operation modes of the "git branch" command that do not need the
|
||||
sort key information, no longer errors out by seeing a bogus sort
|
||||
key.
|
||||
(merge 98e7ab6d42 jc/fix-ref-sorting-parse later to maint).
|
||||
|
||||
* The compatibility implementation for unsetenv(3) were written to
|
||||
mimic ancient, non-POSIX, variant seen in an old glibc; it has been
|
||||
changed to return an integer to match the more modern era.
|
||||
(merge a38989bd5b jc/unsetenv-returns-an-int later to maint).
|
||||
|
||||
* The clean/smudge conversion code path has been prepared to better
|
||||
work on platforms where ulong is narrower than size_t.
|
||||
(merge 596b5e77c9 mc/clean-smudge-with-llp64 later to maint).
|
||||
|
||||
* Redact the path part of packfile URI that appears in the trace output.
|
||||
(merge 0ba558ffb1 if/redact-packfile-uri later to maint).
|
||||
|
||||
* CI has been taught to catch some Unicode directional formatting
|
||||
sequence that can be used in certain mischief.
|
||||
(merge 0e7696c64d js/ci-no-directional-formatting later to maint).
|
||||
|
||||
* The "--date=format:<strftime>" gained a workaround for the lack of
|
||||
system support for a non-local timezone to handle "%s" placeholder.
|
||||
(merge 9b591b9403 jk/strbuf-addftime-seconds-since-epoch later to maint).
|
||||
|
||||
* The "merge" subcommand of "git jump" (in contrib/) silently ignored
|
||||
pathspec and other parameters.
|
||||
(merge 67ba13e5a4 jk/jump-merge-with-pathspec later to maint).
|
||||
|
||||
* The code to decode the length of packed object size has been
|
||||
corrected.
|
||||
(merge 34de5b8eac jt/pack-header-lshift-overflow later to maint).
|
||||
|
||||
* The advice message given by "git pull" when the user hasn't made a
|
||||
choice between merge and rebase still said that the merge is the
|
||||
default, which no longer is the case. This has been corrected.
|
||||
(merge 71076d0edd ah/advice-pull-has-no-preference-between-rebase-and-merge later to maint).
|
||||
|
||||
* "git fetch", when received a bad packfile, can fail with SIGPIPE.
|
||||
This wasn't wrong per-se, but we now detect the situation and fail
|
||||
in a more predictable way.
|
||||
(merge 2a4aed42ec jk/fetch-pack-avoid-sigpipe-to-index-pack later to maint).
|
||||
|
||||
* The function to cull a child process and determine the exit status
|
||||
had two separate code paths for normal callers and callers in a
|
||||
signal handler, and the latter did not yield correct value when the
|
||||
child has caught a signal. The handling of the exit status has
|
||||
been unified for these two code paths. An existing test with
|
||||
flakiness has also been corrected.
|
||||
(merge 5263e22cba jk/t7006-sigpipe-tests-fix later to maint).
|
||||
|
||||
* When a non-existent program is given as the pager, we tried to
|
||||
reuse an uninitialized child_process structure and crashed, which
|
||||
has been fixed.
|
||||
(merge f917f57f40 em/missing-pager later to maint).
|
||||
|
||||
* The single-key-input mode in "git add -p" had some code to handle
|
||||
keys that generate a sequence of input via ReadKey(), which did not
|
||||
handle end-of-file correctly, which has been fixed.
|
||||
(merge fc8a8126df cb/add-p-single-key-fix later to maint).
|
||||
|
||||
* "git rebase -x" added an unnecessary 'exec' instructions before
|
||||
'noop', which has been corrected.
|
||||
(merge cc9dcdee61 en/rebase-x-fix later to maint).
|
||||
|
||||
* When the "git push" command is killed while the receiving end is
|
||||
trying to report what happened to the ref update proposals, the
|
||||
latter used to die, due to SIGPIPE. The code now ignores SIGPIPE
|
||||
to increase our chances to run the post-receive hook after it
|
||||
happens.
|
||||
(merge d34182b9e3 rj/receive-pack-avoid-sigpipe-during-status-reporting later to maint).
|
||||
|
||||
* "git worktree add" showed "Preparing worktree" message to the
|
||||
standard output stream, but when it failed, the message from die()
|
||||
went to the standard error stream. Depending on the order the
|
||||
stdio streams are flushed at the program end, this resulted in
|
||||
confusing output. It has been corrected by sending all the chatty
|
||||
messages to the standard error stream.
|
||||
(merge b50252484f es/worktree-chatty-to-stderr later to maint).
|
||||
|
||||
* Coding guideline document has been updated to clarify what goes to
|
||||
standard error in our system.
|
||||
(merge e258eb4800 es/doc-stdout-vs-stderr later to maint).
|
||||
|
||||
* The sparse-index/sparse-checkout feature had a bug in its use of
|
||||
the matching code to determine which path is in or outside the
|
||||
sparse checkout patterns.
|
||||
(merge 8c5de0d265 ds/sparse-deep-pattern-checkout-fix later to maint).
|
||||
|
||||
* "git rebase -x" by mistake started exporting the GIT_DIR and
|
||||
GIT_WORK_TREE environment variables when the command was rewritten
|
||||
in C, which has been corrected.
|
||||
(merge 434e0636db en/rebase-x-wo-git-dir-env later to maint).
|
||||
|
||||
* When "git log" implicitly enabled the "decoration" processing
|
||||
without being explicitly asked with "--decorate" option, it failed
|
||||
to read and honor the settings given by the "--decorate-refs"
|
||||
option.
|
||||
|
||||
* "git fetch --set-upstream" did not check if there is a current
|
||||
branch, leading to a segfault when it is run on a detached HEAD,
|
||||
which has been corrected.
|
||||
(merge 17baeaf82d ab/fetch-set-upstream-while-detached later to maint).
|
||||
|
||||
* Among some code paths that ask an yes/no question, only one place
|
||||
gave a prompt that looked different from the others, which has been
|
||||
updated to match what the others create.
|
||||
(merge 0fc8ed154c km/help-prompt-fix later to maint).
|
||||
|
||||
* "git log --invert-grep --author=<name>" used to exclude commits
|
||||
written by the given author, but now "--invert-grep" only affects
|
||||
the matches made by the "--grep=<pattern>" option.
|
||||
(merge 794c000267 rs/log-invert-grep-with-headers later to maint).
|
||||
|
||||
* "git grep --perl-regexp" failed to match UTF-8 characters with
|
||||
wildcard when the pattern consists only of ASCII letters, which has
|
||||
been corrected.
|
||||
(merge 32e3e8bc55 rs/pcre2-utf later to maint).
|
||||
|
||||
* Certain sparse-checkout patterns that are valid in non-cone mode
|
||||
led to segfault in cone mode, which has been corrected.
|
||||
|
||||
* Use of certain "git rev-list" options with "git fast-export"
|
||||
created nonsense results (the worst two of which being "--reverse"
|
||||
and "--invert-grep --grep=<foo>"). The use of "--first-parent" is
|
||||
made to behave a bit more sensible than before.
|
||||
(merge 726a228dfb ws/fast-export-with-revision-options later to maint).
|
||||
|
||||
* Perf tests were run with end-user's shell, but it has been
|
||||
corrected to use the shell specified by $TEST_SHELL_PATH.
|
||||
(merge 9ccab75608 ja/perf-use-specified-shell later to maint).
|
||||
|
||||
* Fix dependency rules to generate hook-list.h header file.
|
||||
(merge d3fd1a6667 ab/makefile-hook-list-dependency-fix later to maint).
|
||||
|
||||
* "git stash" by default triggers its "push" action, but its
|
||||
implementation also made "git stash -h" to show short help only for
|
||||
"git stash push", which has been corrected.
|
||||
(merge ca7990cea5 ab/do-not-limit-stash-help-to-push later to maint).
|
||||
|
||||
* "git apply --3way" bypasses the attempt to do a three-way
|
||||
application in more cases to address the regression caused by the
|
||||
recent change to use direct application as a fallback.
|
||||
(merge 34d607032c jz/apply-3-corner-cases later to maint).
|
||||
|
||||
* Fix performance-releated bug in "git subtree" (in contrib/).
|
||||
(merge 3ce8888fb4 jl/subtree-check-parents-argument-passing-fix later to maint).
|
||||
|
||||
* Extend the guidance to choose the base commit to build your work
|
||||
on, and hint/nudge contributors to read others' changes.
|
||||
(merge fdfae830f8 jc/doc-submitting-patches-choice-of-base later to maint).
|
||||
|
||||
* A corner case bug in the ort merge strategy has been corrected.
|
||||
(merge d30126c20d en/merge-ort-renorm-with-rename-delete-conflict-fix later to maint).
|
||||
|
||||
* "git stash apply" forgot to attempt restoring untracked files when
|
||||
it failed to restore changes to tracked ones.
|
||||
(merge 71cade5a0b en/stash-df-fix later to maint).
|
||||
|
||||
* Calling dynamically loaded functions on Windows has been corrected.
|
||||
(merge 4a9b204920 ma/windows-dynload-fix later to maint).
|
||||
|
||||
* Some lockfile code called free() in signal-death code path, which
|
||||
has been corrected.
|
||||
(merge 58d4d7f1c5 ps/lockfile-cleanup-fix later to maint).
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge 74db416c9c cw/protocol-v2-doc-fix later to maint).
|
||||
(merge f9b2b6684d ja/doc-cleanup later to maint).
|
||||
(merge 7d1b866778 jc/fix-first-object-walk later to maint).
|
||||
(merge 538ac74604 js/trace2-avoid-recursive-errors later to maint).
|
||||
(merge 152923b132 jk/t5319-midx-corruption-test-deflake later to maint).
|
||||
(merge 9081a421a6 ab/checkout-branch-info-leakfix later to maint).
|
||||
(merge 42c456ff81 rs/mergesort later to maint).
|
||||
(merge ad506e6780 tl/midx-docfix later to maint).
|
||||
(merge bf5b83fd8a hk/ci-checkwhitespace-commentfix later to maint).
|
||||
(merge 49f1eb3b34 jk/refs-g11-workaround later to maint).
|
||||
(merge 7d3fc7df70 jt/midx-doc-fix later to maint).
|
||||
(merge 7b089120d9 hn/create-reflog-simplify later to maint).
|
||||
(merge 9e12400da8 cb/mingw-gmtime-r later to maint).
|
||||
(merge 0bf0de6cc7 tb/pack-revindex-on-disk-cleanup later to maint).
|
||||
(merge 2c68f577fc ew/cbtree-remove-unused-and-broken-cb-unlink later to maint).
|
||||
(merge eafd6e7e55 ab/die-with-bug later to maint).
|
||||
(merge 91028f7659 jc/grep-patterntype-default-doc later to maint).
|
||||
(merge 47ca93d071 ds/repack-fixlets later to maint).
|
||||
(merge e6a9bc0c60 rs/t4202-invert-grep-test-fix later to maint).
|
||||
(merge deb5407a42 gh/gpg-doc-markup-fix later to maint).
|
||||
(merge 999bba3e0b rs/daemon-plug-leak later to maint).
|
||||
(merge 786eb1ba39 js/l10n-mention-ngettext-early-in-readme later to maint).
|
||||
(merge 2f12b31b74 ab/makefile-msgfmt-wo-stats later to maint).
|
||||
(merge 0517f591ca fs/gpg-unknown-key-test-fix later to maint).
|
||||
(merge 97d6fb5a1f ma/header-dup-cleanup later to maint).
|
6
Documentation/RelNotes/2.35.1.txt
Normal file
6
Documentation/RelNotes/2.35.1.txt
Normal file
@ -0,0 +1,6 @@
|
||||
Git v2.35.1 Release Notes
|
||||
=========================
|
||||
|
||||
Git 2.35 shipped with a regression that broke use of "rebase" and
|
||||
"stash" in a secondary worktree. This maintenance release ought to
|
||||
fix it.
|
7
Documentation/RelNotes/2.35.2.txt
Normal file
7
Documentation/RelNotes/2.35.2.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.35.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.3,
|
||||
v2.31.2, v2.32.1, v2.33.2 and v2.34.2 to address the security
|
||||
issue CVE-2022-24765; see the release notes for these versions
|
||||
for details.
|
4
Documentation/RelNotes/2.35.3.txt
Normal file
4
Documentation/RelNotes/2.35.3.txt
Normal file
@ -0,0 +1,4 @@
|
||||
Git Documentation/RelNotes/2.35.3.txt Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.35.3.
|
7
Documentation/RelNotes/2.35.4.txt
Normal file
7
Documentation/RelNotes/2.35.4.txt
Normal file
@ -0,0 +1,7 @@
|
||||
Git v2.35.4 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5,
|
||||
v2.31.4, v2.32.3, v2.33.4 and v2.34.4 to address the security
|
||||
issue CVE-2022-29187; see the release notes for these versions
|
||||
for details.
|
429
Documentation/RelNotes/2.36.0.txt
Normal file
429
Documentation/RelNotes/2.36.0.txt
Normal file
@ -0,0 +1,429 @@
|
||||
Git 2.36 Release Notes
|
||||
======================
|
||||
|
||||
Updates since Git 2.35
|
||||
----------------------
|
||||
|
||||
Backward compatibility warts
|
||||
|
||||
* "git name-rev --stdin" has been deprecated and issues a warning
|
||||
when used; use "git name-rev --annotate-stdin" instead.
|
||||
|
||||
* "git clone --filter=... --recurse-submodules" only makes the
|
||||
top-level a partial clone, while submodules are fully cloned. This
|
||||
behaviour is changed to pass the same filter down to the submodules.
|
||||
|
||||
* With the fixes for CVE-2022-24765 that are common with versions of
|
||||
Git 2.30.4, 2.31.3, 2.32.2, 2.33.3, 2.34.3, and 2.35.3, Git has
|
||||
been taught not to recognise repositories owned by other users, in
|
||||
order to avoid getting affected by their config files and hooks.
|
||||
You can list the path to the safe/trusted repositories that may be
|
||||
owned by others on a multi-valued configuration variable
|
||||
`safe.directory` to override this behaviour, or use '*' to declare
|
||||
that you trust anything.
|
||||
|
||||
|
||||
Note to those who build from the source
|
||||
|
||||
* Since Git 2.31, our source assumed that the compiler you use to
|
||||
build Git supports variadic macros, with an easy-to-use escape
|
||||
hatch to allow compilation without variadic macros with an request
|
||||
to report that you had to use the escape hatch to the list.
|
||||
Because we haven't heard from anybody who actually needed to use
|
||||
the escape hatch, it has been removed, making support of variadic
|
||||
macros a hard requirement.
|
||||
|
||||
|
||||
UI, Workflows & Features
|
||||
|
||||
* Assorted updates to "git cat-file", especially "-h".
|
||||
|
||||
* The command line completion (in contrib/) learns to complete
|
||||
arguments to give to "git sparse-checkout" command.
|
||||
|
||||
* "git log --remerge-diff" shows the difference from mechanical merge
|
||||
result and the result that is actually recorded in a merge commit.
|
||||
|
||||
* "git log" and friends learned an option --exclude-first-parent-only
|
||||
to propagate UNINTERESTING bit down only along the first-parent
|
||||
chain, just like --first-parent option shows commits that lack the
|
||||
UNINTERESTING bit only along the first-parent chain.
|
||||
|
||||
* The command line completion script (in contrib/) learned to
|
||||
complete all Git subcommands, including the ones that are normally
|
||||
hidden, when GIT_COMPLETION_SHOW_ALL_COMMANDS is used.
|
||||
|
||||
* "git branch" learned the "--recurse-submodules" option.
|
||||
|
||||
* A user can forget to make a script file executable before giving
|
||||
it to "git bisect run". In such a case, all tests will exit with
|
||||
126 or 127 error codes, even on revisions that are marked as good.
|
||||
Try to recognize this situation and stop iteration early.
|
||||
|
||||
* When "index-pack" dies due to incoming data exceeding the maximum
|
||||
allowed input size, include the value of the limit in the error
|
||||
message.
|
||||
|
||||
* The error message given by "git switch HEAD~4" has been clarified
|
||||
to suggest the "--detach" option that is required.
|
||||
|
||||
* In sparse-checkouts, files mis-marked as missing from the working tree
|
||||
could lead to later problems. Such files were hard to discover, and
|
||||
harder to correct. Automatically detecting and correcting the marking
|
||||
of such files has been added to avoid these problems.
|
||||
|
||||
* "git cat-file" learns "--batch-command" mode, which is a more
|
||||
flexible interface than the existing "--batch" or "--batch-check"
|
||||
modes, to allow different kinds of inquiries made.
|
||||
|
||||
* The level of verbose output from the ort backend during inner merge
|
||||
has been aligned to that of the recursive backend.
|
||||
|
||||
* "git remote rename A B", depending on the number of remote-tracking
|
||||
refs involved, takes long time renaming them. The command has been
|
||||
taught to show progress bar while making the user wait.
|
||||
|
||||
* Bundle file format gets extended to allow a partial bundle,
|
||||
filtered by similar criteria you would give when making a
|
||||
partial/lazy clone.
|
||||
|
||||
* A new built-in userdiff driver for kotlin has been added.
|
||||
|
||||
* "git repack" learned a new configuration to disable triggering of
|
||||
age-old "update-server-info" command, which is rarely useful these
|
||||
days.
|
||||
|
||||
* "git stash" does not allow subcommands it internally runs as its
|
||||
implementation detail, except for "git reset", to emit messages;
|
||||
now "git reset" part has also been squelched.
|
||||
|
||||
* "git ls-tree" learns "--oid-only" option, similar to "--name-only",
|
||||
and more generalized "--format" option.
|
||||
|
||||
* "git fetch --refetch" learned to fetch everything without telling
|
||||
the other side what we already have, which is useful when you
|
||||
cannot trust what you have in the local object store.
|
||||
|
||||
* "git branch" gives hint when branch tracking cannot be established
|
||||
because fetch refspecs from multiple remote repositories overlap.
|
||||
|
||||
* "git worktree list --porcelain" did not c-quote pathnames and lock
|
||||
reasons with unsafe bytes correctly, which is worked around by
|
||||
introducing NUL terminated output format with "-z".
|
||||
|
||||
|
||||
Performance, Internal Implementation, Development Support etc.
|
||||
|
||||
* "git apply" (ab)used the util pointer of the string-list to keep
|
||||
track of how each symbolic link needs to be handled, which has been
|
||||
simplified by using strset.
|
||||
|
||||
* Fix a hand-rolled alloca() imitation that may have violated
|
||||
alignment requirement of data being sorted in compatibility
|
||||
implementation of qsort_s() and stable qsort().
|
||||
|
||||
* Use the parse-options API in "git reflog" command.
|
||||
|
||||
* The conditional inclusion mechanism of configuration files using
|
||||
"[includeIf <condition>]" learns to base its decision on the
|
||||
URL of the remote repository the repository interacts with.
|
||||
(merge 399b198489 jt/conditional-config-on-remote-url later to maint).
|
||||
|
||||
* "git name-rev --stdin" does not behave like usual "--stdin" at
|
||||
all. Start the process of renaming it to "--annotate-stdin".
|
||||
(merge a2585719b3 jc/name-rev-stdin later to maint).
|
||||
|
||||
* "git update-index", "git checkout-index", and "git clean" are
|
||||
taught to work better with the sparse checkout feature.
|
||||
|
||||
* Use an internal call to reset_head() helper function instead of
|
||||
spawning "git checkout" in "rebase", and update code paths that are
|
||||
involved in the change.
|
||||
|
||||
* Messages "ort" merge backend prepares while dealing with conflicted
|
||||
paths were unnecessarily confusing since it did not differentiate
|
||||
inner merges and outer merges.
|
||||
|
||||
* Small modernization of the rerere-train script (in contrib/).
|
||||
|
||||
* Use designated initializers we started using in mid 2017 in more
|
||||
parts of the codebase that are relatively quiescent.
|
||||
|
||||
* Improve failure case behaviour of xdiff library when memory
|
||||
allocation fails.
|
||||
|
||||
* General clean-up in reftable implementation, including
|
||||
clarification of the API documentation, tightening the code to
|
||||
honor documented length limit, etc.
|
||||
|
||||
* Remove the escape hatch we added when we introduced the weather
|
||||
balloon to use variadic macros unconditionally, to make it official
|
||||
that we now have a hard dependency on the feature.
|
||||
|
||||
* Makefile refactoring with a bit of suffixes rule stripping to
|
||||
optimize the runtime overhead.
|
||||
|
||||
* "git stash drop" is reimplemented as an internal call to
|
||||
reflog_delete() function, instead of invoking "git reflog delete"
|
||||
via run_command() API.
|
||||
|
||||
* Count string_list items in size_t, not "unsigned int".
|
||||
|
||||
* The single-key interactive operation used by "git add -p" has been
|
||||
made more robust.
|
||||
|
||||
* Remove unneeded <meta http-equiv=content-type...> from gitweb
|
||||
output.
|
||||
|
||||
* "git name-rev" learned to use the generation numbers when setting
|
||||
the lower bound of searching commits used to explain the revision,
|
||||
when available, instead of committer time.
|
||||
|
||||
* Replace core.fsyncObjectFiles with two new configuration variables,
|
||||
core.fsync and core.fsyncMethod.
|
||||
|
||||
* Updates to refs traditionally weren't fsync'ed, but we can
|
||||
configure using core.fsync variable to do so.
|
||||
|
||||
* "git reflog" command now uses parse-options API to parse its
|
||||
command line options.
|
||||
|
||||
|
||||
Fixes since v2.35
|
||||
-----------------
|
||||
|
||||
* "rebase" and "stash" in secondary worktrees are broken in
|
||||
Git 2.35.0, which has been corrected.
|
||||
|
||||
* "git pull --rebase" ignored the rebase.autostash configuration
|
||||
variable when the remote history is a descendant of our history,
|
||||
which has been corrected.
|
||||
(merge 3013d98d7a pb/pull-rebase-autostash-fix later to maint).
|
||||
|
||||
* "git update-index --refresh" has been taught to deal better with
|
||||
racy timestamps (just like "git status" already does).
|
||||
(merge 2ede073fd2 ms/update-index-racy later to maint).
|
||||
|
||||
* Avoid tests that are run under GIT_TRACE2 set from failing
|
||||
unnecessarily.
|
||||
(merge 944d808e42 js/test-unset-trace2-parents later to maint).
|
||||
|
||||
* The merge-ort misbehaved when merge.renameLimit configuration is
|
||||
set too low and failed to find all renames.
|
||||
(merge 9ae39fef7f en/merge-ort-restart-optim-fix later to maint).
|
||||
|
||||
* We explain that revs come first before the pathspec among command
|
||||
line arguments, but did not spell out that dashed options come
|
||||
before other args, which has been corrected.
|
||||
(merge c11f95010c tl/doc-cli-options-first later to maint).
|
||||
|
||||
* "git add -p" rewritten in C regressed hunk splitting in some cases,
|
||||
which has been corrected.
|
||||
(merge 7008ddc645 pw/add-p-hunk-split-fix later to maint).
|
||||
|
||||
* "git fetch --negotiate-only" is an internal command used by "git
|
||||
push" to figure out which part of our history is missing from the
|
||||
other side. It should never recurse into submodules even when
|
||||
fetch.recursesubmodules configuration variable is set, nor it
|
||||
should trigger "gc". The code has been tightened up to ensure it
|
||||
only does common ancestry discovery and nothing else.
|
||||
(merge de4eaae63a gc/fetch-negotiate-only-early-return later to maint).
|
||||
|
||||
* The code path that verifies signatures made with ssh were made to
|
||||
work better on a system with CRLF line endings.
|
||||
(merge caeef01ea7 fs/ssh-signing-crlf later to maint).
|
||||
|
||||
* "git sparse-checkout init" failed to write into $GIT_DIR/info
|
||||
directory when the repository was created without one, which has
|
||||
been corrected to auto-create it.
|
||||
(merge 7f44842ac1 jt/sparse-checkout-leading-dir-fix later to maint).
|
||||
|
||||
* Cloning from a repository that does not yet have any branches or
|
||||
tags but has other refs resulted in a "remote transport reported
|
||||
error", which has been corrected.
|
||||
(merge dccea605b6 jt/clone-not-quite-empty later to maint).
|
||||
|
||||
* Mark in various places in the code that the sparse index and the
|
||||
split index features are mutually incompatible.
|
||||
(merge 451b66c533 js/sparse-vs-split-index later to maint).
|
||||
|
||||
* Update the logic to compute alignment requirement for our mem-pool.
|
||||
(merge e38bcc66d8 jc/mem-pool-alignment later to maint).
|
||||
|
||||
* Pick a better random number generator and use it when we prepare
|
||||
temporary filenames.
|
||||
(merge 47efda967c bc/csprng-mktemps later to maint).
|
||||
|
||||
* Update the contributor-facing documents on proposed log messages.
|
||||
(merge cdba0295b0 jc/doc-log-messages later to maint).
|
||||
|
||||
* When "git fetch --prune" failed to prune the refs it wanted to
|
||||
prune, the command issued error messages but exited with exit
|
||||
status 0, which has been corrected.
|
||||
(merge c9e04d905e tg/fetch-prune-exit-code-fix later to maint).
|
||||
|
||||
* Problems identified by Coverity in the reftable code have been
|
||||
corrected.
|
||||
(merge 01033de49f hn/reftable-coverity-fixes later to maint).
|
||||
|
||||
* A bug that made multi-pack bitmap and the object order out-of-sync,
|
||||
making the .midx data corrupt, has been fixed.
|
||||
(merge f8b60cf99b tb/midx-bitmap-corruption-fix later to maint).
|
||||
|
||||
* The build procedure has been taught to notice older version of zlib
|
||||
and enable our replacement uncompress2() automatically.
|
||||
(merge 07564773c2 ab/auto-detect-zlib-compress2 later to maint).
|
||||
|
||||
* Interaction between fetch.negotiationAlgorithm and
|
||||
feature.experimental configuration variables has been corrected.
|
||||
(merge 714edc620c en/fetch-negotiation-default-fix later to maint).
|
||||
|
||||
* "git diff --diff-filter=aR" is now parsed correctly.
|
||||
(merge 75408ca949 js/diff-filter-negation-fix later to maint).
|
||||
|
||||
* When "git subtree" wants to create a merge, it used "git merge" and
|
||||
let it be affected by end-user's "merge.ff" configuration, which
|
||||
has been corrected.
|
||||
(merge 9158a3564a tk/subtree-merge-not-ff-only later to maint).
|
||||
|
||||
* Unlike "git apply", "git patch-id" did not handle patches with
|
||||
hunks that has only 1 line in either preimage or postimage, which
|
||||
has been corrected.
|
||||
(merge 757e75c81e jz/patch-id-hunk-header-parsing-fix later to maint).
|
||||
|
||||
* "receive-pack" checks if it will do any ref updates (various
|
||||
conditions could reject a push) before received objects are taken
|
||||
out of the temporary directory used for quarantine purposes, so
|
||||
that a push that is known-to-fail will not leave crufts that a
|
||||
future "gc" needs to clean up.
|
||||
(merge 5407764069 cb/clear-quarantine-early-on-all-ref-update-errors later to maint).
|
||||
|
||||
* When there is no object to write .bitmap file for, "git
|
||||
multi-pack-index" triggered an error, instead of just skipping,
|
||||
which has been corrected.
|
||||
(merge eb57277ba3 tb/midx-no-bitmap-for-no-objects later to maint).
|
||||
|
||||
* "git cmd -h" outside a repository should error out cleanly for many
|
||||
commands, but instead it hit a BUG(), which has been corrected.
|
||||
(merge 87ad07d735 js/short-help-outside-repo-fix later to maint).
|
||||
|
||||
* "working tree" and "per-worktree ref" were in glossary, but
|
||||
"worktree" itself wasn't, which has been corrected.
|
||||
(merge 2df5387ed0 jc/glossary-worktree later to maint).
|
||||
|
||||
* L10n support for a few error messages.
|
||||
(merge 3d3c23b3a7 bs/forbid-i18n-of-protocol-token-in-fetch-pack later to maint).
|
||||
|
||||
* Test modernization.
|
||||
(merge d4fe066e4b sy/t0001-use-path-is-helper later to maint).
|
||||
|
||||
* "git log --graph --graph" used to leak a graph structure, and there
|
||||
was no way to countermand "--graph" that appear earlier on the
|
||||
command line. A "--no-graph" option has been added and resource
|
||||
leakage has been plugged.
|
||||
|
||||
* Error output given in response to an ambiguous object name has been
|
||||
improved.
|
||||
(merge 3a73c1dfaf ab/ambiguous-object-name later to maint).
|
||||
|
||||
* "git sparse-checkout" wants to work with per-worktree configuration,
|
||||
but did not work well in a worktree attached to a bare repository.
|
||||
(merge 3ce1138272 ds/sparse-checkout-requires-per-worktree-config later to maint).
|
||||
|
||||
* Setting core.untrackedCache to true failed to add the untracked
|
||||
cache extension to the index.
|
||||
|
||||
* Workaround we have for versions of PCRE2 before their version 10.36
|
||||
were in effect only for their versions newer than 10.36 by mistake,
|
||||
which has been corrected.
|
||||
(merge 97169fc361 rs/pcre-invalid-utf8-fix-fix later to maint).
|
||||
|
||||
* Document Taylor as a new member of Git PLC at SFC. Welcome.
|
||||
(merge e8d56ca863 tb/coc-plc-update later to maint).
|
||||
|
||||
* "git checkout -b branch/with/multi/level/name && git stash" only
|
||||
recorded the last level component of the branch name, which has
|
||||
been corrected.
|
||||
|
||||
* Check the return value from parse_tree_indirect() to turn segfaults
|
||||
into calls to die().
|
||||
(merge 8d2eaf649a gc/parse-tree-indirect-errors later to maint).
|
||||
|
||||
* Newer version of GPGSM changed its output in a backward
|
||||
incompatible way to break our code that parses its output. It also
|
||||
added more processes our tests need to kill when cleaning up.
|
||||
Adjustments have been made to accommodate these changes.
|
||||
(merge b0b70d54c4 fs/gpgsm-update later to maint).
|
||||
|
||||
* The untracked cache newly computed weren't written back to the
|
||||
on-disk index file when there is no other change to the index,
|
||||
which has been corrected.
|
||||
|
||||
* "git config -h" did not describe the "--type" option correctly.
|
||||
(merge 5445124fad mf/fix-type-in-config-h later to maint).
|
||||
|
||||
* The way generation number v2 in the commit-graph files are
|
||||
(not) handled has been corrected.
|
||||
(merge 6dbf4b8172 ds/commit-graph-gen-v2-fixes later to maint).
|
||||
|
||||
* The method to trigger malloc check used in our tests no longer work
|
||||
with newer versions of glibc.
|
||||
(merge baedc59543 ep/test-malloc-check-with-glibc-2.34 later to maint).
|
||||
|
||||
* When "git fetch --recurse-submodules" grabbed submodule commits
|
||||
that would be needed to recursively check out newly fetched commits
|
||||
in the superproject, it only paid attention to submodules that are
|
||||
in the current checkout of the superproject. We now do so for all
|
||||
submodules that have been run "git submodule init" on.
|
||||
|
||||
* "git rebase $base $non_branch_commit", when $base is an ancestor or
|
||||
the $non_branch_commit, modified the current branch, which has been
|
||||
corrected.
|
||||
|
||||
* When "shallow" information is updated, we forgot to update the
|
||||
in-core equivalent, which has been corrected.
|
||||
|
||||
* When creating a loose object file, we didn't report the exact
|
||||
filename of the file we failed to fsync, even though the
|
||||
information was readily available, which has been corrected.
|
||||
|
||||
* "git am" can read from the standard input when no mailbox is given
|
||||
on the command line, but the end-user gets no indication when it
|
||||
happens, making Git appear stuck.
|
||||
(merge 7b20af6a06 jc/mailsplit-warn-on-tty later to maint).
|
||||
|
||||
* "git mv" failed to refresh the cached stat information for the
|
||||
entry it moved.
|
||||
(merge b7f9130a06 vd/mv-refresh-stat later to maint).
|
||||
|
||||
* Other code cleanup, docfix, build fix, etc.
|
||||
(merge cfc5cf428b jc/find-header later to maint).
|
||||
(merge 40e7cfdd46 jh/p4-fix-use-of-process-error-exception later to maint).
|
||||
(merge 727e6ea350 jh/p4-spawning-external-commands-cleanup later to maint).
|
||||
(merge 0a6adc26e2 rs/grep-expr-cleanup later to maint).
|
||||
(merge 4ed7dfa713 po/readme-mention-contributor-hints later to maint).
|
||||
(merge 6046f7a91c en/plug-leaks-in-merge later to maint).
|
||||
(merge 8c591dbfce bc/clarify-eol-attr later to maint).
|
||||
(merge 518e15db74 rs/parse-options-lithelp-help later to maint).
|
||||
(merge cbac0076ef gh/doc-typos later to maint).
|
||||
(merge ce14de03db ab/no-errno-from-resolve-ref-unsafe later to maint).
|
||||
(merge 2826ffad8c rc/negotiate-only-typofix later to maint).
|
||||
(merge 0f03f04c5c en/sparse-checkout-leakfix later to maint).
|
||||
(merge 74f3390dde sy/diff-usage-typofix later to maint).
|
||||
(merge 45d0212a71 ll/doc-mktree-typofix later to maint).
|
||||
(merge e9b272e4c1 js/no-more-legacy-stash later to maint).
|
||||
(merge 6798b08e84 ab/do-not-hide-failures-in-git-dot-pm later to maint).
|
||||
(merge 9325285df4 po/doc-check-ignore-markup-fix later to maint).
|
||||
(merge cd26cd6c7c sy/modernize-t-lib-read-tree-m-3way later to maint).
|
||||
(merge d17294a05e ab/hash-object-leakfix later to maint).
|
||||
(merge b8403129d3 jd/t0015-modernize later to maint).
|
||||
(merge 332acc248d ds/mailmap later to maint).
|
||||
(merge 04bf052eef ab/grep-patterntype later to maint).
|
||||
(merge 6ee36364eb ab/diff-free-more later to maint).
|
||||
(merge 63a36017fe nj/read-tree-doc-reffix later to maint).
|
||||
(merge eed36fce38 sm/no-git-in-upstream-of-pipe-in-tests later to maint).
|
||||
(merge c614beb933 ep/t6423-modernize later to maint).
|
||||
(merge 57be9c6dee ab/reflog-prep-fix later to maint).
|
||||
(merge 5327d8982a js/in-place-reverse-in-sequencer later to maint).
|
||||
(merge 2e2c0be51e dp/worktree-repair-in-usage later to maint).
|
||||
(merge 6563706568 jc/coding-guidelines-decl-in-for-loop later to maint).
|
33
Documentation/RelNotes/2.36.1.txt
Normal file
33
Documentation/RelNotes/2.36.1.txt
Normal file
@ -0,0 +1,33 @@
|
||||
Git v2.36.1 Release Notes
|
||||
=========================
|
||||
|
||||
Fixes since v2.36
|
||||
-----------------
|
||||
|
||||
* "git submodule update" without pathspec should silently skip an
|
||||
uninitialized submodule, but it started to become noisy by mistake.
|
||||
|
||||
* "diff-tree --stdin" has been broken for about a year, but 2.36
|
||||
release broke it even worse by breaking running the command with
|
||||
<pathspec>, which in turn broke "gitk" and got noticed. This has
|
||||
been corrected by aligning its behaviour to that of "log".
|
||||
|
||||
* Regression fix for 2.36 where "git name-rev" started to sometimes
|
||||
reference strings after they are freed.
|
||||
|
||||
* "git show <commit1> <commit2>... -- <pathspec>" lost the pathspec
|
||||
when showing the second and subsequent commits, which has been
|
||||
corrected.
|
||||
|
||||
* "git fast-export -- <pathspec>" lost the pathspec when showing the
|
||||
second and subsequent commits, which has been corrected.
|
||||
|
||||
* "git format-patch <args> -- <pathspec>" lost the pathspec when
|
||||
showing the second and subsequent commits, which has been
|
||||
corrected.
|
||||
|
||||
* Get rid of a bogus and over-eager coccinelle rule.
|
||||
|
||||
* Correct choices of C compilers used in various CI jobs.
|
||||
|
||||
Also contains minor documentation updates and code clean-ups.
|
56
Documentation/RelNotes/2.36.2.txt
Normal file
56
Documentation/RelNotes/2.36.2.txt
Normal file
@ -0,0 +1,56 @@
|
||||
Git v2.36.2 Release Notes
|
||||
=========================
|
||||
|
||||
This release merges up the fixes that appear in v2.30.5, v2.31.4,
|
||||
v2.32.3, v2.33.4, v2.34.4 and v2.35.4 to address the security
|
||||
issue CVE-2022-29187; see the release notes for these versions
|
||||
for details.
|
||||
|
||||
Apart from that, this maintenance release is primarily to merge down
|
||||
updates to the build and CI procedures from the 'master' front, in
|
||||
order to ensure that we can cut healthy maintenance releases in the
|
||||
future. It also contains a handful of small and trivially-correct
|
||||
bugfixes.
|
||||
|
||||
Fixes since v2.36.1
|
||||
-------------------
|
||||
|
||||
* Fixes real problems noticed by gcc 12 and works around false
|
||||
positives.
|
||||
|
||||
* Update URL to the gitk repository.
|
||||
|
||||
* The "--current" option of "git show-branch" should have been made
|
||||
incompatible with the "--reflog" mode, but this was not enforced,
|
||||
which has been corrected.
|
||||
|
||||
* "git archive --add-file=<path>" picked up the raw permission bits
|
||||
from the path and propagated to zip output in some cases, without
|
||||
normalization, which has been corrected (tar output did not have
|
||||
this issue).
|
||||
|
||||
* A bit of test framework fixes with a few fixes to issues found by
|
||||
valgrind.
|
||||
|
||||
* macOS CI jobs have been occasionally flaky due to tentative version
|
||||
skew between perforce and the homebrew packager. Instead of
|
||||
failing the whole CI job, just let it skip the p4 tests when this
|
||||
happens.
|
||||
|
||||
* The commit summary shown after making a commit is matched to what
|
||||
is given in "git status" not to use the break-rewrite heuristics.
|
||||
|
||||
* Avoid problems from interaction between malloc_check and address
|
||||
sanitizer.
|
||||
|
||||
* "git rebase --keep-base <upstream> <branch-to-rebase>" computed the
|
||||
commit to rebase onto incorrectly, which has been corrected.
|
||||
|
||||
* The path taken by "git multi-pack-index" command from the end user
|
||||
was compared with path internally prepared by the tool withut first
|
||||
normalizing, which lead to duplicated paths not being noticed,
|
||||
which has been corrected.
|
||||
|
||||
* "git clone --origin X" leaked piece of memory that held value read
|
||||
from the clone.defaultRemoteName configuration variable, which has
|
||||
been plugged.
|
@ -19,8 +19,10 @@ change is relevant to.
|
||||
base your work on the tip of the topic.
|
||||
|
||||
* A new feature should be based on `master` in general. If the new
|
||||
feature depends on a topic that is in `seen`, but not in `master`,
|
||||
base your work on the tip of that topic.
|
||||
feature depends on other topics that are in `next`, but not in
|
||||
`master`, fork a branch from the tip of `master`, merge these topics
|
||||
to the branch, and work on that branch. You can remind yourself of
|
||||
how you prepared the base with `git log --first-parent master..`.
|
||||
|
||||
* Corrections and enhancements to a topic not yet in `master` should
|
||||
be based on the tip of that topic. If the topic has not been merged
|
||||
@ -28,10 +30,10 @@ change is relevant to.
|
||||
into the series.
|
||||
|
||||
* In the exceptional case that a new feature depends on several topics
|
||||
not in `master`, start working on `next` or `seen` privately and send
|
||||
out patches for discussion. Before the final merge, you may have to
|
||||
wait until some of the dependent topics graduate to `master`, and
|
||||
rebase your work.
|
||||
not in `master`, start working on `next` or `seen` privately and
|
||||
send out patches only for discussion. Once your new feature starts
|
||||
to stabilize, you would have to rebase it (see the "depends on other
|
||||
topics" above).
|
||||
|
||||
* Some parts of the system have dedicated maintainers with their own
|
||||
repositories (see the section "Subsystems" below). Changes to
|
||||
@ -71,13 +73,17 @@ Make sure that you have tests for the bug you are fixing. See
|
||||
[[tests]]
|
||||
When adding a new feature, make sure that you have new tests to show
|
||||
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.
|
||||
feature does not trigger when it shouldn't. After any code change,
|
||||
make sure that the entire test suite passes. When fixing a bug, make
|
||||
sure you have new tests that break if somebody else breaks what you
|
||||
fixed by accident to avoid regression. Also, try merging your work to
|
||||
'next' and 'seen' and make sure the tests still pass; topics by others
|
||||
that are still in flight may have unexpected interactions with what
|
||||
you are trying to do in your topic.
|
||||
|
||||
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
|
||||
@ -104,6 +110,35 @@ run `git diff --check` on your changes before you commit.
|
||||
[[describe-changes]]
|
||||
=== Describe your changes well.
|
||||
|
||||
The log message that explains your changes is just as important as the
|
||||
changes themselves. Your code may be clearly written with in-code
|
||||
comment to sufficiently explain how it works with the surrounding
|
||||
code, but those who need to fix or enhance your code in the future
|
||||
will need to know _why_ your code does what it does, for a few
|
||||
reasons:
|
||||
|
||||
. Your code may be doing something differently from what you wanted it
|
||||
to do. Writing down what you actually wanted to achieve will help
|
||||
them fix your code and make it do what it should have been doing
|
||||
(also, you often discover your own bugs yourself, while writing the
|
||||
log message to summarize the thought behind it).
|
||||
|
||||
. Your code may be doing things that were only necessary for your
|
||||
immediate needs (e.g. "do X to directories" without implementing or
|
||||
even designing what is to be done on files). Writing down why you
|
||||
excluded what the code does not do will help guide future developers.
|
||||
Writing down "we do X to directories, because directories have
|
||||
characteristic Y" would help them infer "oh, files also have the same
|
||||
characteristic Y, so perhaps doing X to them would also make sense?".
|
||||
Saying "we don't do the same X to files, because ..." will help them
|
||||
decide if the reasoning is sound (in which case they do not waste
|
||||
time extending your code to cover files), or reason differently (in
|
||||
which case, they can explain why they extend your code to cover
|
||||
files, too).
|
||||
|
||||
The goal of your log message is to convey the _why_ behind your
|
||||
change to help future developers.
|
||||
|
||||
The first line of the commit message should be a short description (50
|
||||
characters is the soft limit, see DISCUSSION in linkgit:git-commit[1]),
|
||||
and should skip the full stop. It is also conventional in most cases to
|
||||
@ -136,6 +171,13 @@ The body should provide a meaningful commit message, which:
|
||||
|
||||
. alternate solutions considered but discarded, if any.
|
||||
|
||||
[[present-tense]]
|
||||
The problem statement that describes the status quo is written in the
|
||||
present tense. Write "The code does X when it is given input Y",
|
||||
instead of "The code used to do Y when given input X". You do not
|
||||
have to say "Currently"---the status quo in the problem statement is
|
||||
about the code _without_ your change, by project convention.
|
||||
|
||||
[[imperative-mood]]
|
||||
Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
|
||||
instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
|
||||
@ -145,8 +187,21 @@ without external resources. Instead of giving a URL to a mailing list
|
||||
archive, summarize the relevant points of the discussion.
|
||||
|
||||
[[commit-reference]]
|
||||
If you want to reference a previous commit in the history of a stable
|
||||
branch, use the format "abbreviated hash (subject, date)", like this:
|
||||
|
||||
There are a few reasons why you may want to refer to another commit in
|
||||
the "more stable" part of the history (i.e. on branches like `maint`,
|
||||
`master`, and `next`):
|
||||
|
||||
. A commit that introduced the root cause of a bug you are fixing.
|
||||
|
||||
. A commit that introduced a feature that you are enhancing.
|
||||
|
||||
. A commit that conflicts with your work when you made a trial merge
|
||||
of your work into `next` and `seen` for testing.
|
||||
|
||||
When you reference a commit on a more stable branch (like `master`,
|
||||
`maint` and `next`), use the format "abbreviated hash (subject,
|
||||
date)", like this:
|
||||
|
||||
....
|
||||
Commit f86a374 (pack-bitmap.c: fix a memleak, 2015-03-30)
|
||||
@ -167,6 +222,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.
|
||||
|
||||
@ -181,9 +315,11 @@ Please make sure your patch does not add commented out debugging code,
|
||||
or include any extra files which do not relate to what your patch
|
||||
is trying to achieve. Make sure to review
|
||||
your patch after generating it, to ensure accuracy. Before
|
||||
sending out, please make sure it cleanly applies to the `master`
|
||||
branch head. If you are preparing a work based on "next" branch,
|
||||
that is fine, but please mark it as such.
|
||||
sending out, please make sure it cleanly applies to the base you
|
||||
have chosen in the "Decide what to base your work on" section,
|
||||
and unless it targets the `master` branch (which is the default),
|
||||
mark your patches as such.
|
||||
|
||||
|
||||
[[send-patches]]
|
||||
=== Sending your patches.
|
||||
@ -287,7 +423,10 @@ Security mailing list{security-ml-ref}.
|
||||
Send your patch with "To:" set to the mailing list, with "cc:" listing
|
||||
people who are involved in the area you are touching (the `git
|
||||
contacts` command in `contrib/contacts/` can help to
|
||||
identify them), to solicit comments and reviews.
|
||||
identify them), to solicit comments and reviews. Also, when you made
|
||||
trial merges of your topic to `next` and `seen`, you may have noticed
|
||||
work by others conflicting with your changes. There is a good possibility
|
||||
that these people may know the area you are touching well.
|
||||
|
||||
:current-maintainer: footnote:[The current maintainer: gitster@pobox.com]
|
||||
:git-ml: footnote:[The mailing list: git@vger.kernel.org]
|
||||
@ -302,85 +441,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 (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:".
|
||||
|
||||
== Subsystems with dedicated maintainers
|
||||
|
||||
Some parts of the system have dedicated maintainers with their own
|
||||
@ -392,7 +452,10 @@ repositories.
|
||||
|
||||
- `gitk-git/` comes from Paul Mackerras's gitk project:
|
||||
|
||||
git://ozlabs.org/~paulus/gitk
|
||||
git://git.ozlabs.org/~paulus/gitk
|
||||
|
||||
Those who are interested in improve gitk can volunteer to help Paul
|
||||
in maintaining it cf. <YntxL/fTplFm8lr6@cleo>.
|
||||
|
||||
- `po/` comes from the localization coordinator, Jiang Xin:
|
||||
|
||||
@ -449,13 +512,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:
|
||||
|
||||
@ -463,31 +525,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
|
||||
|
@ -136,5 +136,16 @@ take effect.
|
||||
option. An empty file name, `""`, will clear the list of revs from
|
||||
previously processed files.
|
||||
|
||||
--color-lines::
|
||||
Color line annotations in the default format differently if they come from
|
||||
the same commit as the preceding line. This makes it easier to distinguish
|
||||
code blocks introduced by different commits. The color defaults to cyan and
|
||||
can be adjusted using the `color.blame.repeatedLines` config option.
|
||||
|
||||
--color-by-age::
|
||||
Color line annotations depending on the age of the line in the default format.
|
||||
The `color.blame.highlightRecent` config option controls what color is used for
|
||||
each range of age.
|
||||
|
||||
-h::
|
||||
Show help message.
|
||||
|
@ -159,6 +159,33 @@ all branches that begin with `foo/`. This is useful if your branches are
|
||||
organized hierarchically and you would like to apply a configuration to
|
||||
all the branches in that hierarchy.
|
||||
|
||||
`hasconfig:remote.*.url:`::
|
||||
The data that follows this keyword is taken to
|
||||
be a pattern with standard globbing wildcards and two
|
||||
additional ones, `**/` and `/**`, that can match multiple
|
||||
components. The first time this keyword is seen, the rest of
|
||||
the config files will be scanned for remote URLs (without
|
||||
applying any values). If there exists at least one remote URL
|
||||
that matches this pattern, the include condition is met.
|
||||
+
|
||||
Files included by this option (directly or indirectly) are not allowed
|
||||
to contain remote URLs.
|
||||
+
|
||||
Note that unlike other includeIf conditions, resolving this condition
|
||||
relies on information that is not yet known at the point of reading the
|
||||
condition. A typical use case is this option being present as a
|
||||
system-level or global-level config, and the remote URL being in a
|
||||
local-level config; hence the need to scan ahead when resolving this
|
||||
condition. In order to avoid the chicken-and-egg problem in which
|
||||
potentially-included files can affect whether such files are potentially
|
||||
included, Git breaks the cycle by prohibiting these files from affecting
|
||||
the resolution of these conditions (thus, prohibiting them from
|
||||
declaring remote URLs).
|
||||
+
|
||||
As for the naming of this keyword, it is for forwards compatibiliy with
|
||||
a naming scheme that supports more variable-based include conditions,
|
||||
but currently Git only supports the exact keyword described above.
|
||||
|
||||
A few more notes on matching via `gitdir` and `gitdir/i`:
|
||||
|
||||
* Symlinks in `$GIT_DIR` are not resolved before matching.
|
||||
@ -226,6 +253,14 @@ Example
|
||||
; currently checked out
|
||||
[includeIf "onbranch:foo-branch"]
|
||||
path = foo.inc
|
||||
|
||||
; include only if a remote with the given URL exists (note
|
||||
; that such a URL may be provided later in a file or in a
|
||||
; file read after this file is read, as seen in this example)
|
||||
[includeIf "hasconfig:remote.*.url:https://example.com/**"]
|
||||
path = foo.inc
|
||||
[remote "origin"]
|
||||
url = https://example.com/git
|
||||
----
|
||||
|
||||
Values
|
||||
@ -262,11 +297,19 @@ color::
|
||||
colors (at most two, one for foreground and one for background)
|
||||
and attributes (as many as you want), separated by spaces.
|
||||
+
|
||||
The basic colors accepted are `normal`, `black`, `red`, `green`, `yellow`,
|
||||
`blue`, `magenta`, `cyan` and `white`. The first color given is the
|
||||
foreground; the second is the background. All the basic colors except
|
||||
`normal` have a bright variant that can be specified by prefixing the
|
||||
color with `bright`, like `brightred`.
|
||||
The basic colors accepted are `normal`, `black`, `red`, `green`,
|
||||
`yellow`, `blue`, `magenta`, `cyan`, `white` and `default`. The first
|
||||
color given is the foreground; the second is the background. All the
|
||||
basic colors except `normal` and `default` have a bright variant that can
|
||||
be specified by prefixing the color with `bright`, like `brightred`.
|
||||
+
|
||||
The color `normal` makes no change to the color. It is the same as an
|
||||
empty string, but can be used as the foreground color when specifying a
|
||||
background color alone (for example, "normal red").
|
||||
+
|
||||
The color `default` explicitly resets the color to the terminal default,
|
||||
for example to specify a cleared background. Although it varies between
|
||||
terminals, this is usually not the same as setting to "white black".
|
||||
+
|
||||
Colors may also be given as numbers between 0 and 255; these use ANSI
|
||||
256-color mode (but note that not all terminals may support this). If
|
||||
@ -280,6 +323,11 @@ The position of any attributes with respect to the colors
|
||||
be turned off by prefixing them with `no` or `no-` (e.g., `noreverse`,
|
||||
`no-ul`, etc).
|
||||
+
|
||||
The pseudo-attribute `reset` resets all colors and attributes before
|
||||
applying the specified coloring. For example, `reset green` will result
|
||||
in a green foreground and default background without any active
|
||||
attributes.
|
||||
+
|
||||
An empty color string produces no color effect at all. This can be used
|
||||
to avoid coloring specific elements without disabling color entirely.
|
||||
+
|
||||
@ -298,6 +346,15 @@ pathname::
|
||||
tilde expansion happens to such a string: `~/`
|
||||
is expanded to the value of `$HOME`, and `~user/` to the
|
||||
specified user's home directory.
|
||||
+
|
||||
If a path starts with `%(prefix)/`, the remainder is interpreted as a
|
||||
path relative to Git's "runtime prefix", i.e. relative to the location
|
||||
where Git itself was installed. For example, `%(prefix)/bin/` refers to
|
||||
the directory in which the Git executable itself lives. If Git was
|
||||
compiled without runtime prefix support, the compiled-in prefix will be
|
||||
substituted instead. In the unlikely event that a literal path needs to
|
||||
be specified that should _not_ be expanded, it needs to be prefixed by
|
||||
`./`, like so: `./%(prefix)/bin`.
|
||||
|
||||
|
||||
Variables
|
||||
@ -438,7 +495,7 @@ include::config/repack.txt[]
|
||||
|
||||
include::config/rerere.txt[]
|
||||
|
||||
include::config/reset.txt[]
|
||||
include::config/safe.txt[]
|
||||
|
||||
include::config/sendemail.txt[]
|
||||
|
||||
@ -446,6 +503,8 @@ include::config/sequencer.txt[]
|
||||
|
||||
include::config/showbranch.txt[]
|
||||
|
||||
include::config/sparse.txt[]
|
||||
|
||||
include::config/splitindex.txt[]
|
||||
|
||||
include::config/ssh.txt[]
|
||||
|
@ -4,6 +4,10 @@ advice.*::
|
||||
can tell Git that you do not need help by setting these to 'false':
|
||||
+
|
||||
--
|
||||
ambiguousFetchRefspec::
|
||||
Advice shown when fetch refspec for multiple remotes map to
|
||||
the same remote-tracking branch namespace and causes branch
|
||||
tracking set-up to fail.
|
||||
fetchShowForcedUpdates::
|
||||
Advice shown when linkgit:git-fetch[1] takes a long time
|
||||
to calculate forced updates after ref updates, or to warn
|
||||
@ -44,6 +48,9 @@ advice.*::
|
||||
Shown when linkgit:git-push[1] rejects a forced update of
|
||||
a branch when its remote-tracking ref has updates that we
|
||||
do not have locally.
|
||||
skippedCherryPicks::
|
||||
Shown when linkgit:git-rebase[1] skips a commit that has already
|
||||
been cherry-picked onto the upstream branch.
|
||||
statusAheadBehind::
|
||||
Shown when linkgit:git-status[1] computes the ahead/behind
|
||||
counts for a local ref compared to its remote tracking ref,
|
||||
@ -64,10 +71,10 @@ advice.*::
|
||||
commitBeforeMerge::
|
||||
Advice shown when linkgit:git-merge[1] refuses to
|
||||
merge to avoid overwriting local changes.
|
||||
resetQuiet::
|
||||
Advice to consider using the `--quiet` option to linkgit:git-reset[1]
|
||||
when the command takes more than 2 seconds to enumerate unstaged
|
||||
changes after reset.
|
||||
resetNoRefresh::
|
||||
Advice to consider using the `--no-refresh` option to
|
||||
linkgit:git-reset[1] when the command takes more than 2 seconds
|
||||
to refresh the index after reset.
|
||||
resolveConflict::
|
||||
Advice shown by various commands when conflicts
|
||||
prevent the operation from being performed.
|
||||
@ -82,6 +89,9 @@ advice.*::
|
||||
linkgit:git-switch[1] or linkgit:git-checkout[1]
|
||||
to move to the detach HEAD state, to instruct how to
|
||||
create a local branch after the fact.
|
||||
suggestDetachingHead::
|
||||
Advice shown when linkgit:git-switch[1] refuses to detach HEAD
|
||||
without the explicit `--detach` option.
|
||||
checkoutAmbiguousRemoteBranchName::
|
||||
Advice shown when the argument to
|
||||
linkgit:git-checkout[1] and linkgit:git-switch[1]
|
||||
@ -113,6 +123,9 @@ advice.*::
|
||||
submoduleAlternateErrorStrategyDie::
|
||||
Advice shown when a submodule.alternateErrorStrategy option
|
||||
configured to "die" causes a fatal error.
|
||||
submodulesNotUpdated::
|
||||
Advice shown when a user runs a submodule command that fails
|
||||
because `git submodule update --init` was not run.
|
||||
addIgnoredFile::
|
||||
Advice shown if a user attempts to add an ignored file to
|
||||
the index.
|
||||
|
@ -7,7 +7,8 @@ branch.autoSetupMerge::
|
||||
automatic setup is done; `true` -- automatic setup is done when the
|
||||
starting point is a remote-tracking branch; `always` --
|
||||
automatic setup is done when the starting point is either a
|
||||
local branch or remote-tracking
|
||||
local branch or remote-tracking branch; `inherit` -- if the starting point
|
||||
has a tracking configuration, it is copied to the new
|
||||
branch. This option defaults to true.
|
||||
|
||||
branch.autoSetupRebase::
|
||||
@ -85,10 +86,6 @@ When `merges` (or just 'm'), pass the `--rebase-merges` option to 'git rebase'
|
||||
so that the local merge commits are included in the rebase (see
|
||||
linkgit:git-rebase[1] for details).
|
||||
+
|
||||
When `preserve` (or just 'p', deprecated in favor of `merges`), also pass
|
||||
`--preserve-merges` along to 'git rebase' so that locally committed merge
|
||||
commits will not be flattened by running 'git pull'.
|
||||
+
|
||||
When the value is `interactive` (or just 'i'), the rebase is run in interactive
|
||||
mode.
|
||||
+
|
||||
|
@ -6,3 +6,8 @@ clone.defaultRemoteName::
|
||||
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]
|
||||
|
||||
clone.filterSubmodules::
|
||||
If a partial clone filter is provided (see `--filter` in
|
||||
linkgit:git-rev-list[1]) and `--recurse-submodules` is used, also apply
|
||||
the filter to submodules.
|
||||
|
@ -9,26 +9,27 @@ color.advice.hint::
|
||||
Use customized color for hints.
|
||||
|
||||
color.blame.highlightRecent::
|
||||
This can be used to color the metadata of a blame line depending
|
||||
on age of the line.
|
||||
Specify the line annotation color for `git blame --color-by-age`
|
||||
depending upon the age of the line.
|
||||
+
|
||||
This setting should be set to a comma-separated list of color and date settings,
|
||||
starting and ending with a color, the dates should be set from oldest to newest.
|
||||
The metadata will be colored given the colors if the line was introduced
|
||||
before the given timestamp, overwriting older timestamped colors.
|
||||
This setting should be set to a comma-separated list of color and
|
||||
date settings, starting and ending with a color, the dates should be
|
||||
set from oldest to newest. The metadata will be colored with the
|
||||
specified colors if the line was introduced before the given
|
||||
timestamp, overwriting older timestamped colors.
|
||||
+
|
||||
Instead of an absolute timestamp relative timestamps work as well, e.g.
|
||||
2.weeks.ago is valid to address anything older than 2 weeks.
|
||||
Instead of an absolute timestamp relative timestamps work as well,
|
||||
e.g. `2.weeks.ago` is valid to address anything older than 2 weeks.
|
||||
+
|
||||
It defaults to 'blue,12 month ago,white,1 month ago,red', which colors
|
||||
everything older than one year blue, recent changes between one month and
|
||||
one year old are kept white, and lines introduced within the last month are
|
||||
colored red.
|
||||
It defaults to `blue,12 month ago,white,1 month ago,red`, which
|
||||
colors everything older than one year blue, recent changes between
|
||||
one month and one year old are kept white, and lines introduced
|
||||
within the last month are colored red.
|
||||
|
||||
color.blame.repeatedLines::
|
||||
Use the customized color for the part of git-blame output that
|
||||
is repeated meta information per line (such as commit id,
|
||||
author name, date and timezone). Defaults to cyan.
|
||||
Use the specified color to colorize line annotations for
|
||||
`git blame --color-lines`, if they come from the same commit as the
|
||||
preceding line. Defaults to cyan.
|
||||
|
||||
color.branch::
|
||||
A boolean to enable/disable color in the output of
|
||||
@ -104,9 +105,12 @@ color.grep.<slot>::
|
||||
`matchContext`;;
|
||||
matching text in context lines
|
||||
`matchSelected`;;
|
||||
matching text in selected lines
|
||||
matching text in selected lines. Also, used to customize the following
|
||||
linkgit:git-log[1] subcommands: `--grep`, `--author` and `--committer`.
|
||||
`selected`;;
|
||||
non-matching text in selected lines
|
||||
non-matching text in selected lines. Also, used to customize the
|
||||
following linkgit:git-log[1] subcommands: `--grep`, `--author` and
|
||||
`--committer`.
|
||||
`separator`;;
|
||||
separators between fields on a line (`:`, `-`, and `=`)
|
||||
and between hunks (`--`)
|
||||
|
@ -62,22 +62,54 @@ core.protectNTFS::
|
||||
Defaults to `true` on Windows, and `false` elsewhere.
|
||||
|
||||
core.fsmonitor::
|
||||
If set, the value of this variable is used as a command which
|
||||
will identify all files that may have changed since the
|
||||
requested date/time. This information is used to speed up git by
|
||||
avoiding unnecessary processing of files that have not changed.
|
||||
See the "fsmonitor-watchman" section of linkgit:githooks[5].
|
||||
If set to true, enable the built-in file system monitor
|
||||
daemon for this working directory (linkgit:git-fsmonitor{litdd}daemon[1]).
|
||||
+
|
||||
Like hook-based file system monitors, the built-in file system monitor
|
||||
can speed up Git commands that need to refresh the Git index
|
||||
(e.g. `git status`) in a working directory with many files. The
|
||||
built-in monitor eliminates the need to install and maintain an
|
||||
external third-party tool.
|
||||
+
|
||||
The built-in file system monitor is currently available only on a
|
||||
limited set of supported platforms. Currently, this includes Windows
|
||||
and MacOS.
|
||||
+
|
||||
Otherwise, this variable contains the pathname of the "fsmonitor"
|
||||
hook command.
|
||||
+
|
||||
This hook command is used to identify all files that may have changed
|
||||
since the requested date/time. This information is used to speed up
|
||||
git by avoiding unnecessary scanning of files that have not changed.
|
||||
+
|
||||
See the "fsmonitor-watchman" section of linkgit:githooks[5].
|
||||
+
|
||||
Note that if you concurrently use multiple versions of Git, such
|
||||
as one version on the command line and another version in an IDE
|
||||
tool, that the definition of `core.fsmonitor` was extended to
|
||||
allow boolean values in addition to hook pathnames. Git versions
|
||||
2.35.1 and prior will not understand the boolean values and will
|
||||
consider the "true" or "false" values as hook pathnames to be
|
||||
invoked. Git versions 2.26 thru 2.35.1 default to hook protocol
|
||||
V2 and will fall back to no fsmonitor (full scan). Git versions
|
||||
prior to 2.26 default to hook protocol V1 and will silently
|
||||
assume there were no changes to report (no scan), so status
|
||||
commands may report incomplete results. For this reason, it is
|
||||
best to upgrade all of your Git versions before using the built-in
|
||||
file system monitor.
|
||||
|
||||
core.fsmonitorHookVersion::
|
||||
Sets the version of hook that is to be used when calling fsmonitor.
|
||||
There are currently versions 1 and 2. When this is not set,
|
||||
version 2 will be tried first and if it fails then version 1
|
||||
will be tried. Version 1 uses a timestamp as input to determine
|
||||
which files have changes since that time but some monitors
|
||||
like watchman have race conditions when used with a timestamp.
|
||||
Version 2 uses an opaque string so that the monitor can return
|
||||
something that can be used to determine what files have changed
|
||||
without race conditions.
|
||||
Sets the protocol version to be used when invoking the
|
||||
"fsmonitor" hook.
|
||||
+
|
||||
There are currently versions 1 and 2. When this is not set,
|
||||
version 2 will be tried first and if it fails then version 1
|
||||
will be tried. Version 1 uses a timestamp as input to determine
|
||||
which files have changes since that time but some monitors
|
||||
like Watchman have race conditions when used with a timestamp.
|
||||
Version 2 uses an opaque string so that the monitor can return
|
||||
something that can be used to determine what files have changed
|
||||
without race conditions.
|
||||
|
||||
core.trustctime::
|
||||
If false, the ctime differences between the index and the
|
||||
@ -547,13 +579,64 @@ core.whitespace::
|
||||
is relevant for `indent-with-non-tab` and when Git fixes `tab-in-indent`
|
||||
errors. The default tab width is 8. Allowed values are 1 to 63.
|
||||
|
||||
core.fsync::
|
||||
A comma-separated list of components of the repository that
|
||||
should be hardened via the core.fsyncMethod when created or
|
||||
modified. You can disable hardening of any component by
|
||||
prefixing it with a '-'. Items that are not hardened may be
|
||||
lost in the event of an unclean system shutdown. Unless you
|
||||
have special requirements, it is recommended that you leave
|
||||
this option empty or pick one of `committed`, `added`,
|
||||
or `all`.
|
||||
+
|
||||
When this configuration is encountered, the set of components starts with
|
||||
the platform default value, disabled components are removed, and additional
|
||||
components are added. `none` resets the state so that the platform default
|
||||
is ignored.
|
||||
+
|
||||
The empty string resets the fsync configuration to the platform
|
||||
default. The default on most platforms is equivalent to
|
||||
`core.fsync=committed,-loose-object`, which has good performance,
|
||||
but risks losing recent work in the event of an unclean system shutdown.
|
||||
+
|
||||
* `none` clears the set of fsynced components.
|
||||
* `loose-object` hardens objects added to the repo in loose-object form.
|
||||
* `pack` hardens objects added to the repo in packfile form.
|
||||
* `pack-metadata` hardens packfile bitmaps and indexes.
|
||||
* `commit-graph` hardens the commit graph file.
|
||||
* `index` hardens the index when it is modified.
|
||||
* `objects` is an aggregate option that is equivalent to
|
||||
`loose-object,pack`.
|
||||
* `reference` hardens references modified in the repo.
|
||||
* `derived-metadata` is an aggregate option that is equivalent to
|
||||
`pack-metadata,commit-graph`.
|
||||
* `committed` is an aggregate option that is currently equivalent to
|
||||
`objects`. This mode sacrifices some performance to ensure that work
|
||||
that is committed to the repository with `git commit` or similar commands
|
||||
is hardened.
|
||||
* `added` is an aggregate option that is currently equivalent to
|
||||
`committed,index`. This mode sacrifices additional performance to
|
||||
ensure that the results of commands like `git add` and similar operations
|
||||
are hardened.
|
||||
* `all` is an aggregate option that syncs all individual components above.
|
||||
|
||||
core.fsyncMethod::
|
||||
A value indicating the strategy Git will use to harden repository data
|
||||
using fsync and related primitives.
|
||||
+
|
||||
* `fsync` uses the fsync() system call or platform equivalents.
|
||||
* `writeout-only` issues pagecache writeback requests, but depending on the
|
||||
filesystem and storage hardware, data added to the repository may not be
|
||||
durable in the event of a system crash. This is the default mode on macOS.
|
||||
|
||||
core.fsyncObjectFiles::
|
||||
This boolean will enable 'fsync()' when writing object files.
|
||||
This setting is deprecated. Use core.fsync instead.
|
||||
+
|
||||
This is a total waste of time and effort on a filesystem that orders
|
||||
data writes properly, but can be useful for filesystems that do not use
|
||||
journalling (traditional UNIX filesystems) or that only journal metadata
|
||||
and not file contents (OS X's HFS+, or Linux ext3 with "data=writeback").
|
||||
This setting affects data added to the Git repository in loose-object
|
||||
form. When set to true, Git will issue an fsync or similar system call
|
||||
to flush caches so that loose-objects remain consistent in the face
|
||||
of a unclean system shutdown.
|
||||
|
||||
core.preloadIndex::
|
||||
Enable parallel index preload for operations like 'git diff'
|
||||
|
@ -6,3 +6,34 @@ extensions.objectFormat::
|
||||
Note that this setting should only be set by linkgit:git-init[1] or
|
||||
linkgit:git-clone[1]. Trying to change it after initialization will not
|
||||
work and will produce hard-to-diagnose issues.
|
||||
|
||||
extensions.worktreeConfig::
|
||||
If enabled, then worktrees will load config settings from the
|
||||
`$GIT_DIR/config.worktree` file in addition to the
|
||||
`$GIT_COMMON_DIR/config` file. Note that `$GIT_COMMON_DIR` and
|
||||
`$GIT_DIR` are the same for the main working tree, while other
|
||||
working trees have `$GIT_DIR` equal to
|
||||
`$GIT_COMMON_DIR/worktrees/<id>/`. The settings in the
|
||||
`config.worktree` file will override settings from any other
|
||||
config files.
|
||||
+
|
||||
When enabling `extensions.worktreeConfig`, you must be careful to move
|
||||
certain values from the common config file to the main working tree's
|
||||
`config.worktree` file, if present:
|
||||
+
|
||||
* `core.worktree` must be moved from `$GIT_COMMON_DIR/config` to
|
||||
`$GIT_COMMON_DIR/config.worktree`.
|
||||
* If `core.bare` is true, then it must be moved from `$GIT_COMMON_DIR/config`
|
||||
to `$GIT_COMMON_DIR/config.worktree`.
|
||||
+
|
||||
It may also be beneficial to adjust the locations of `core.sparseCheckout`
|
||||
and `core.sparseCheckoutCone` depending on your desire for customizable
|
||||
sparse-checkout settings for each worktree. By default, the `git
|
||||
sparse-checkout` builtin enables `extensions.worktreeConfig`, assigns
|
||||
these config values on a per-worktree basis, and uses the
|
||||
`$GIT_DIR/info/sparse-checkout` file to specify the sparsity for each
|
||||
worktree independently. See linkgit:git-sparse-checkout[1] for more
|
||||
details.
|
||||
+
|
||||
For historical reasons, `extensions.worktreeConfig` is respected
|
||||
regardless of the `core.repositoryFormatVersion` setting.
|
||||
|
@ -56,18 +56,19 @@ fetch.output::
|
||||
OUTPUT in linkgit:git-fetch[1] for detail.
|
||||
|
||||
fetch.negotiationAlgorithm::
|
||||
Control how information about the commits in the local repository is
|
||||
sent when negotiating the contents of the packfile to be sent by the
|
||||
server. Set to "skipping" to use an algorithm that skips commits in an
|
||||
effort to converge faster, but may result in a larger-than-necessary
|
||||
packfile; or set to "noop" to not send any information at all, which
|
||||
will almost certainly result in a larger-than-necessary packfile, but
|
||||
will skip the negotiation step.
|
||||
The default is "default" which instructs Git to use the default algorithm
|
||||
that never skips commits (unless the server has acknowledged it or one
|
||||
of its descendants). If `feature.experimental` is enabled, then this
|
||||
setting defaults to "skipping".
|
||||
Unknown values will cause 'git fetch' to error out.
|
||||
Control how information about the commits in the local repository
|
||||
is sent when negotiating the contents of the packfile to be sent by
|
||||
the server. Set to "consecutive" to use an algorithm that walks
|
||||
over consecutive commits checking each one. Set to "skipping" to
|
||||
use an algorithm that skips commits in an effort to converge
|
||||
faster, but may result in a larger-than-necessary packfile; or set
|
||||
to "noop" to not send any information at all, which will almost
|
||||
certainly result in a larger-than-necessary packfile, but will skip
|
||||
the negotiation step. Set to "default" to override settings made
|
||||
previously and use the default behaviour. The default is normally
|
||||
"consecutive", but if `feature.experimental` is true, then the
|
||||
default is "skipping". Unknown values will cause 'git fetch' to
|
||||
error out.
|
||||
+
|
||||
See also the `--negotiate-only` and `--negotiation-tip` options to
|
||||
linkgit:git-fetch[1].
|
||||
|
@ -11,13 +11,13 @@ gpg.program::
|
||||
|
||||
gpg.format::
|
||||
Specifies which key format to use when signing with `--gpg-sign`.
|
||||
Default is "openpgp" and another possible value is "x509".
|
||||
Default is "openpgp". Other possible values are "x509", "ssh".
|
||||
|
||||
gpg.<format>.program::
|
||||
Use this to customize the program used for the signing format you
|
||||
chose. (see `gpg.program` and `gpg.format`) `gpg.program` can still
|
||||
be used as a legacy synonym for `gpg.openpgp.program`. The default
|
||||
value for `gpg.x509.program` is "gpgsm".
|
||||
value for `gpg.x509.program` is "gpgsm" and `gpg.ssh.program` is "ssh-keygen".
|
||||
|
||||
gpg.minTrustLevel::
|
||||
Specifies a minimum trust level for signature verification. If
|
||||
@ -33,3 +33,47 @@ gpg.minTrustLevel::
|
||||
* `marginal`
|
||||
* `fully`
|
||||
* `ultimate`
|
||||
|
||||
gpg.ssh.defaultKeyCommand::
|
||||
This command that will be run when user.signingkey is not set and a ssh
|
||||
signature is requested. On successful exit a valid ssh public key is
|
||||
expected in the first line of its output. To automatically use the first
|
||||
available key from your ssh-agent set this to "ssh-add -L".
|
||||
|
||||
gpg.ssh.allowedSignersFile::
|
||||
A file containing ssh public keys which you are willing to trust.
|
||||
The file consists of one or more lines of principals followed by an ssh
|
||||
public key.
|
||||
e.g.: `user1@example.com,user2@example.com ssh-rsa AAAAX1...`
|
||||
See ssh-keygen(1) "ALLOWED SIGNERS" for details.
|
||||
The principal is only used to identify the key and is available when
|
||||
verifying a signature.
|
||||
+
|
||||
SSH has no concept of trust levels like gpg does. To be able to differentiate
|
||||
between valid signatures and trusted signatures the trust level of a signature
|
||||
verification is set to `fully` when the public key is present in the allowedSignersFile.
|
||||
Otherwise the trust level is `undefined` and git verify-commit/tag will fail.
|
||||
+
|
||||
This file can be set to a location outside of the repository and every developer
|
||||
maintains their own trust store. A central repository server could generate this
|
||||
file automatically from ssh keys with push access to verify the code against.
|
||||
In a corporate setting this file is probably generated at a global location
|
||||
from automation that already handles developer ssh keys.
|
||||
+
|
||||
A repository that only allows signed commits can store the file
|
||||
in the repository itself using a path relative to the top-level of the working tree.
|
||||
This way only committers with an already valid key can add or change keys in the keyring.
|
||||
+
|
||||
Since OpensSSH 8.8 this file allows specifying a key lifetime using valid-after &
|
||||
valid-before options. Git will mark signatures as valid if the signing key was
|
||||
valid at the time of the signature's creation. This allows users to change a
|
||||
signing key without invalidating all previously made signatures.
|
||||
+
|
||||
Using a SSH CA key with the cert-authority option
|
||||
(see ssh-keygen(1) "CERTIFICATES") is also valid.
|
||||
|
||||
gpg.ssh.revocationFile::
|
||||
Either a SSH KRL or a list of revoked public keys (without the principal prefix).
|
||||
See ssh-keygen(1) for details.
|
||||
If a public key is found in this file then it will always be treated
|
||||
as having trust level "never" and signatures will show as invalid.
|
||||
|
@ -8,7 +8,8 @@ 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.
|
||||
value 'default' will use the `grep.extendedRegexp` option to choose
|
||||
between 'basic' and 'extended'.
|
||||
|
||||
grep.extendedRegexp::
|
||||
If set to true, enable `--extended-regexp` option by default. This
|
||||
|
@ -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]).
|
||||
|
@ -9,13 +9,15 @@ help.format::
|
||||
|
||||
help.autoCorrect::
|
||||
If git detects typos and can identify exactly one valid command similar
|
||||
to the error, git will automatically run the intended command after
|
||||
waiting a duration of time defined by this configuration value in
|
||||
deciseconds (0.1 sec). If this value is 0, the suggested corrections
|
||||
will be shown, but not executed. If it is a negative integer, or
|
||||
"immediate", the suggested command
|
||||
is run immediately. If "never", suggestions are not shown at all. The
|
||||
default value is zero.
|
||||
to the error, git will try to suggest the correct command or even
|
||||
run the suggestion automatically. Possible config values are:
|
||||
- 0 (default): show the suggested command.
|
||||
- positive number: run the suggested command after specified
|
||||
deciseconds (0.1 sec).
|
||||
- "immediate": run the suggested command immediately.
|
||||
- "prompt": show the suggestion and prompt for confirmation to run
|
||||
the command.
|
||||
- "never": don't run or show any suggested command.
|
||||
|
||||
help.htmlPath::
|
||||
Specify the path where the HTML documentation resides. File system paths
|
||||
|
@ -4,7 +4,14 @@ merge.conflictStyle::
|
||||
shows a `<<<<<<<` conflict marker, changes made by one side,
|
||||
a `=======` marker, changes made by the other side, and then
|
||||
a `>>>>>>>` marker. An alternate style, "diff3", adds a `|||||||`
|
||||
marker and the original text before the `=======` marker.
|
||||
marker and the original text before the `=======` marker. The
|
||||
"merge" style tends to produce smaller conflict regions than diff3,
|
||||
both because of the exclusion of the original text, and because
|
||||
when a subset of lines match on the two sides they are just pulled
|
||||
out of the conflict region. Another alternate style, "zdiff3", is
|
||||
similar to diff3 but removes matching lines on the two sides from
|
||||
the conflict region when those matching lines appear near either
|
||||
the beginning or end of a conflict region.
|
||||
|
||||
merge.defaultToUpstream::
|
||||
If merge is called without any commit argument, merge the upstream
|
||||
|
@ -159,6 +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.
|
||||
+
|
||||
When writing a multi-pack reachability bitmap, no new namehashes are
|
||||
computed; instead, any namehashes stored in an existing bitmap are
|
||||
permuted into their appropriate location when writing a new bitmap.
|
||||
|
||||
pack.writeReverseIndex::
|
||||
When true, git will write a corresponding .rev file (see:
|
||||
|
@ -18,10 +18,6 @@ When `merges` (or just 'm'), pass the `--rebase-merges` option to 'git rebase'
|
||||
so that the local merge commits are included in the rebase (see
|
||||
linkgit:git-rebase[1] for details).
|
||||
+
|
||||
When `preserve` (or just 'p', deprecated in favor of `merges`), also pass
|
||||
`--preserve-merges` along to 'git rebase' so that locally committed merge
|
||||
commits will not be flattened by running 'git pull'.
|
||||
+
|
||||
When the value is `interactive` (or just 'i'), the rebase is run in interactive
|
||||
mode.
|
||||
+
|
||||
|
@ -82,5 +82,7 @@ remote.<name>.promisor::
|
||||
objects.
|
||||
|
||||
remote.<name>.partialclonefilter::
|
||||
The filter that will be applied when fetching from this
|
||||
promisor remote.
|
||||
The filter that will be applied when fetching from this promisor remote.
|
||||
Changing or clearing this value will only affect fetches for new commits.
|
||||
To fetch associated objects for commits already present in the local object
|
||||
database, use the `--refetch` option of linkgit:git-fetch[1].
|
||||
|
@ -25,3 +25,8 @@ repack.writeBitmaps::
|
||||
space and extra time spent on the initial repack. This has
|
||||
no effect if multiple packfiles are created.
|
||||
Defaults to true on bare repos, false otherwise.
|
||||
|
||||
repack.updateServerInfo::
|
||||
If set to false, linkgit:git-repack[1] will not run
|
||||
linkgit:git-update-server-info[1]. Defaults to true. Can be overridden
|
||||
when true by the `-n` option of linkgit:git-repack[1].
|
||||
|
@ -1,2 +0,0 @@
|
||||
reset.quiet::
|
||||
When set to true, 'git reset' will default to the '--quiet' option.
|
42
Documentation/config/safe.txt
Normal file
42
Documentation/config/safe.txt
Normal file
@ -0,0 +1,42 @@
|
||||
safe.directory::
|
||||
These config entries specify Git-tracked directories that are
|
||||
considered safe even if they are owned by someone other than the
|
||||
current user. By default, Git will refuse to even parse a Git
|
||||
config of a repository owned by someone else, let alone run its
|
||||
hooks, and this config setting allows users to specify exceptions,
|
||||
e.g. for intentionally shared repositories (see the `--shared`
|
||||
option in linkgit:git-init[1]).
|
||||
+
|
||||
This is a multi-valued setting, i.e. you can add more than one directory
|
||||
via `git config --add`. To reset the list of safe directories (e.g. to
|
||||
override any such directories specified in the system config), add a
|
||||
`safe.directory` entry with an empty value.
|
||||
+
|
||||
This config setting is only respected when specified in a system or global
|
||||
config, not when it is specified in a repository config or via the command
|
||||
line option `-c safe.directory=<path>`.
|
||||
+
|
||||
The value of this setting is interpolated, i.e. `~/<path>` expands to a
|
||||
path relative to the home directory and `%(prefix)/<path>` expands to a
|
||||
path relative to Git's (runtime) prefix.
|
||||
+
|
||||
To completely opt-out of this security check, set `safe.directory` to the
|
||||
string `*`. This will allow all repositories to be treated as if their
|
||||
directory was listed in the `safe.directory` list. If `safe.directory=*`
|
||||
is set in system config and you want to re-enable this protection, then
|
||||
initialize your list with an empty value before listing the repositories
|
||||
that you deem safe.
|
||||
+
|
||||
As explained, Git only allows you to access repositories owned by
|
||||
yourself, i.e. the user who is running Git, by default. When Git
|
||||
is running as 'root' in a non Windows platform that provides sudo,
|
||||
however, git checks the SUDO_UID environment variable that sudo creates
|
||||
and will allow access to the uid recorded as its value in addition to
|
||||
the id from 'root'.
|
||||
This is to make it easy to perform a common sequence during installation
|
||||
"make && sudo make install". A git process running under 'sudo' runs as
|
||||
'root' but the 'sudo' command exports the environment variable to record
|
||||
which id the original user has.
|
||||
If that is not what you would prefer and want git to only trust
|
||||
repositories that are owned by root instead, then you can remove
|
||||
the `SUDO_UID` variable from root's environment before invoking git.
|
27
Documentation/config/sparse.txt
Normal file
27
Documentation/config/sparse.txt
Normal file
@ -0,0 +1,27 @@
|
||||
sparse.expectFilesOutsideOfPatterns::
|
||||
Typically with sparse checkouts, files not matching any
|
||||
sparsity patterns are marked with a SKIP_WORKTREE bit in the
|
||||
index and are missing from the working tree. Accordingly, Git
|
||||
will ordinarily check whether files with the SKIP_WORKTREE bit
|
||||
are in fact present in the working tree contrary to
|
||||
expectations. If Git finds any, it marks those paths as
|
||||
present by clearing the relevant SKIP_WORKTREE bits. This
|
||||
option can be used to tell Git that such
|
||||
present-despite-skipped files are expected and to stop
|
||||
checking for them.
|
||||
+
|
||||
The default is `false`, which allows Git to automatically recover
|
||||
from the list of files in the index and working tree falling out of
|
||||
sync.
|
||||
+
|
||||
Set this to `true` if you are in a setup where some external factor
|
||||
relieves Git of the responsibility for maintaining the consistency
|
||||
between the presence of working tree files and sparsity patterns. For
|
||||
example, if you have a Git-aware virtual file system that has a robust
|
||||
mechanism for keeping the working tree and the sparsity patterns up to
|
||||
date based on access patterns.
|
||||
+
|
||||
Regardless of this setting, Git does not check for
|
||||
present-despite-skipped files unless sparse checkout is enabled, so
|
||||
this config option has no effect unless `core.sparseCheckout` is
|
||||
`true`.
|
@ -1,10 +1,3 @@
|
||||
stash.useBuiltin::
|
||||
Unused configuration variable. Used in Git versions 2.22 to
|
||||
2.26 as an escape hatch to enable the legacy shellscript
|
||||
implementation of stash. 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.
|
||||
|
||||
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
|
||||
|
@ -59,18 +59,33 @@ submodule.active::
|
||||
|
||||
submodule.recurse::
|
||||
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`.
|
||||
option by default. Defaults to false.
|
||||
+
|
||||
When set to true, it can be deactivated via the
|
||||
`--no-recurse-submodules` option. Note that some Git commands
|
||||
lacking this option may call some of the above commands affected by
|
||||
`submodule.recurse`; for instance `git remote update` will call
|
||||
`git fetch` but does not have a `--no-recurse-submodules` option.
|
||||
For these commands a workaround is to temporarily change the
|
||||
configuration value by using `git -c submodule.recurse=0`.
|
||||
+
|
||||
The following list shows the commands that accept
|
||||
`--recurse-submodules` and whether they are supported by this
|
||||
setting.
|
||||
|
||||
* `checkout`, `fetch`, `grep`, `pull`, `push`, `read-tree`,
|
||||
`reset`, `restore` and `switch` are always supported.
|
||||
* `clone` and `ls-files` are not supported.
|
||||
* `branch` is supported only if `submodule.propagateBranches` is
|
||||
enabled
|
||||
|
||||
submodule.propagateBranches::
|
||||
[EXPERIMENTAL] A boolean that enables branching support when
|
||||
using `--recurse-submodules` or `submodule.recurse=true`.
|
||||
Enabling this will allow certain commands to accept
|
||||
`--recurse-submodules` and certain commands that already accept
|
||||
`--recurse-submodules` will now consider branches.
|
||||
Defaults to false.
|
||||
When set to true, it can be deactivated via the
|
||||
`--no-recurse-submodules` option. Note that some Git commands
|
||||
lacking this option may call some of the above commands affected by
|
||||
`submodule.recurse`; for instance `git remote update` will call
|
||||
`git fetch` but does not have a `--no-recurse-submodules` option.
|
||||
For these commands a workaround is to temporarily change the
|
||||
configuration value by using `git -c submodule.recurse=0`.
|
||||
|
||||
submodule.fetchJobs::
|
||||
Specifies how many submodules are fetched/cloned at the same time.
|
||||
|
@ -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
|
||||
|
@ -36,3 +36,13 @@ user.signingKey::
|
||||
commit, you can override the default selection with this variable.
|
||||
This option is passed unchanged to gpg's --local-user parameter,
|
||||
so you may specify a key using any method that gpg supports.
|
||||
If gpg.format is set to `ssh` this can contain the path to either
|
||||
your private ssh key or the public key when ssh-agent is used.
|
||||
Alternatively it can contain a public key prefixed with `key::`
|
||||
directly (e.g.: "key::ssh-rsa XXXXXX identifier"). The private key
|
||||
needs to be available via ssh-agent. If not set git will call
|
||||
gpg.ssh.defaultKeyCommand (e.g.: "ssh-add -L") and try to use the
|
||||
first key available. For backward compatibility, a raw key which
|
||||
begins with "ssh-", such as "ssh-rsa XXXXXX identifier", is treated
|
||||
as "key::ssh-rsa XXXXXX identifier", but this form is deprecated;
|
||||
use the `key::` form instead.
|
||||
|
@ -5,9 +5,9 @@ The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables
|
||||
support the following date formats:
|
||||
|
||||
Git internal format::
|
||||
It is `<unix timestamp> <time zone offset>`, where `<unix
|
||||
timestamp>` is the number of seconds since the UNIX epoch.
|
||||
`<time zone offset>` is a positive or negative offset from UTC.
|
||||
It is `<unix-timestamp> <time-zone-offset>`, where
|
||||
`<unix-timestamp>` is the number of seconds since the UNIX epoch.
|
||||
`<time-zone-offset>` is a positive or negative offset from UTC.
|
||||
For example CET (which is 1 hour ahead of UTC) is `+0100`.
|
||||
|
||||
RFC 2822::
|
||||
|
@ -59,7 +59,7 @@ Possible status letters are:
|
||||
- D: deletion of a file
|
||||
- M: modification of the contents or mode of a file
|
||||
- R: renaming of a file
|
||||
- T: change in the type of the file
|
||||
- T: change in the type of the file (regular file, symbolic link or submodule)
|
||||
- U: file is unmerged (you must complete the merge before it can
|
||||
be committed)
|
||||
- X: "unknown" change type (most probably a bug, please report it)
|
||||
|
@ -34,7 +34,7 @@ endif::git-diff[]
|
||||
endif::git-format-patch[]
|
||||
|
||||
ifdef::git-log[]
|
||||
--diff-merges=(off|none|on|first-parent|1|separate|m|combined|c|dense-combined|cc)::
|
||||
--diff-merges=(off|none|on|first-parent|1|separate|m|combined|c|dense-combined|cc|remerge|r)::
|
||||
--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
|
||||
@ -49,9 +49,10 @@ ifdef::git-log[]
|
||||
--diff-merges=m:::
|
||||
-m:::
|
||||
This option makes diff output for merge commits to be shown in
|
||||
the default format. The default format could be changed using
|
||||
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`. `-m` implies `-p`.
|
||||
is `separate`.
|
||||
+
|
||||
--diff-merges=first-parent:::
|
||||
--diff-merges=1:::
|
||||
@ -61,8 +62,19 @@ ifdef::git-log[]
|
||||
--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. This is the format that `-m` produced
|
||||
historically.
|
||||
for each parent.
|
||||
+
|
||||
--diff-merges=remerge:::
|
||||
--diff-merges=r:::
|
||||
--remerge-diff:::
|
||||
With this option, two-parent merge commits are remerged to
|
||||
create a temporary tree object -- potentially containing files
|
||||
with conflict markers and such. A diff is then shown between
|
||||
that temporary tree and the actual merge commit.
|
||||
+
|
||||
The output emitted when this option is used is subject to change, and
|
||||
so is its interaction with other options (unless explicitly
|
||||
documented).
|
||||
+
|
||||
--diff-merges=combined:::
|
||||
--diff-merges=c:::
|
||||
@ -616,11 +628,8 @@ ifndef::git-format-patch[]
|
||||
Also, these upper-case letters can be downcased to exclude. E.g.
|
||||
`--diff-filter=ad` excludes added and deleted paths.
|
||||
+
|
||||
Note that not all diffs can feature all types. For instance, diffs
|
||||
from the index to the working tree can never have Added entries
|
||||
(because the set of paths included in the diff is limited by what is in
|
||||
the index). Similarly, copied and renamed entries cannot appear if
|
||||
detection for those types is disabled.
|
||||
Note that not all diffs can feature all types. For instance, copied and
|
||||
renamed entries cannot appear if detection for those types is disabled.
|
||||
|
||||
-S<string>::
|
||||
Look for differences that change the number of occurrences of
|
||||
|
@ -71,6 +71,7 @@ configuration variables documented in linkgit:git-config[1], and the
|
||||
ancestors of the provided `--negotiation-tip=*` arguments,
|
||||
which we have in common with the server.
|
||||
+
|
||||
This is incompatible with `--recurse-submodules=[yes|on-demand]`.
|
||||
Internally this is used to implement the `push.negotiate` option, see
|
||||
linkgit:git-config[1].
|
||||
|
||||
@ -162,6 +163,16 @@ endif::git-pull[]
|
||||
behavior for a remote may be specified with the remote.<name>.tagOpt
|
||||
setting. See linkgit:git-config[1].
|
||||
|
||||
ifndef::git-pull[]
|
||||
--refetch::
|
||||
Instead of negotiating with the server to avoid transferring commits and
|
||||
associated objects that are already present locally, this option fetches
|
||||
all objects as a fresh clone would. Use this to reapply a partial clone
|
||||
filter from configuration or using `--filter=` when the filter
|
||||
definition has changed. Automatic post-fetch maintenance will perform
|
||||
object database pack consolidation to remove any duplicate objects.
|
||||
endif::git-pull[]
|
||||
|
||||
--refmap=<refspec>::
|
||||
When fetching refs listed on the command line, use the
|
||||
specified refspec (can be given more than once) to map the
|
||||
@ -185,15 +196,23 @@ endif::git-pull[]
|
||||
ifndef::git-pull[]
|
||||
--recurse-submodules[=yes|on-demand|no]::
|
||||
This option controls if and under what conditions new commits of
|
||||
populated submodules should be fetched too. It can be used as a
|
||||
boolean option to completely disable recursion when set to 'no' or to
|
||||
unconditionally recurse into all populated submodules when set to
|
||||
'yes', which is the default when this option is used without any
|
||||
value. Use 'on-demand' to only recurse into a populated submodule
|
||||
when the superproject retrieves a commit that updates the submodule's
|
||||
reference to a commit that isn't already in the local submodule
|
||||
clone. By default, 'on-demand' is used, unless
|
||||
`fetch.recurseSubmodules` is set (see linkgit:git-config[1]).
|
||||
submodules should be fetched too. When recursing through submodules,
|
||||
`git fetch` always attempts to fetch "changed" submodules, that is, a
|
||||
submodule that has commits that are referenced by a newly fetched
|
||||
superproject commit but are missing in the local submodule clone. A
|
||||
changed submodule can be fetched as long as it is present locally e.g.
|
||||
in `$GIT_DIR/modules/` (see linkgit:gitsubmodules[7]); if the upstream
|
||||
adds a new submodule, that submodule cannot be fetched until it is
|
||||
cloned e.g. by `git submodule update`.
|
||||
+
|
||||
When set to 'on-demand', only changed submodules are fetched. When set
|
||||
to 'yes', all populated submodules are fetched and submodules that are
|
||||
both unpopulated and changed are fetched. When set to 'no', submodules
|
||||
are never fetched.
|
||||
+
|
||||
When unspecified, this uses the value of `fetch.recurseSubmodules` if it
|
||||
is set (see linkgit:git-config[1]), defaulting to 'on-demand' if unset.
|
||||
When this option is used without any value, it defaults to 'yes'.
|
||||
endif::git-pull[]
|
||||
|
||||
-j::
|
||||
|
@ -9,7 +9,7 @@ SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]
|
||||
[--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]
|
||||
[--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]] [--sparse]
|
||||
[--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]
|
||||
[--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]
|
||||
[--] [<pathspec>...]
|
||||
@ -79,6 +79,13 @@ in linkgit:gitglossary[7].
|
||||
--force::
|
||||
Allow adding otherwise ignored files.
|
||||
|
||||
--sparse::
|
||||
Allow updating index entries outside of the sparse-checkout cone.
|
||||
Normally, `git add` refuses to update index entries whose paths do
|
||||
not fit within the sparse-checkout cone, since those files might
|
||||
be removed from the working tree without warning. See
|
||||
linkgit:git-sparse-checkout[1] for more details.
|
||||
|
||||
-i::
|
||||
--interactive::
|
||||
Add modified contents in the working tree interactively to
|
||||
|
@ -16,8 +16,9 @@ SYNOPSIS
|
||||
[--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]
|
||||
[--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]
|
||||
[--quoted-cr=<action>]
|
||||
[--empty=(stop|drop|keep)]
|
||||
[(<mbox> | <Maildir>)...]
|
||||
'git am' (--continue | --skip | --abort | --quit | --show-current-patch[=(diff|raw)])
|
||||
'git am' (--continue | --skip | --abort | --quit | --show-current-patch[=(diff|raw)] | --allow-empty)
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@ -63,6 +64,14 @@ OPTIONS
|
||||
--quoted-cr=<action>::
|
||||
This flag will be passed down to 'git mailinfo' (see linkgit:git-mailinfo[1]).
|
||||
|
||||
--empty=(stop|drop|keep)::
|
||||
By default, or when the option is set to 'stop', the command
|
||||
errors out on an input e-mail message lacking a patch
|
||||
and stops into the middle of the current am session. When this
|
||||
option is set to 'drop', skip such an e-mail message instead.
|
||||
When this option is set to 'keep', create an empty commit,
|
||||
recording the contents of the e-mail message as its log.
|
||||
|
||||
-m::
|
||||
--message-id::
|
||||
Pass the `-m` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]),
|
||||
@ -178,6 +187,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
|
||||
@ -189,6 +200,11 @@ default. You can use `--no-utf8` to override this.
|
||||
the e-mail message; if `diff`, show the diff portion only.
|
||||
Defaults to `raw`.
|
||||
|
||||
--allow-empty::
|
||||
After a patch failure on an input e-mail message lacking a patch,
|
||||
create an empty commit with the contents of the e-mail message
|
||||
as its log message.
|
||||
|
||||
DISCUSSION
|
||||
----------
|
||||
|
||||
|
@ -16,7 +16,7 @@ SYNOPSIS
|
||||
[--ignore-space-change | --ignore-whitespace]
|
||||
[--whitespace=(nowarn|warn|fix|error|error-all)]
|
||||
[--exclude=<path>] [--include=<path>] [--directory=<root>]
|
||||
[--verbose] [--unsafe-paths] [<patch>...]
|
||||
[--verbose | --quiet] [--unsafe-paths] [--allow-empty] [<patch>...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@ -228,6 +228,11 @@ behavior:
|
||||
current patch being applied will be printed. This option will cause
|
||||
additional information to be reported.
|
||||
|
||||
-q::
|
||||
--quiet::
|
||||
Suppress stderr output. Messages about patch status and progress
|
||||
will not be printed.
|
||||
|
||||
--recount::
|
||||
Do not trust the line counts in the hunk headers, but infer them
|
||||
by inspecting the patch (e.g. after editing the patch without
|
||||
@ -251,6 +256,10 @@ When `git apply` is used as a "better GNU patch", the user can pass
|
||||
the `--unsafe-paths` option to override this safety check. This option
|
||||
has no effect when `--index` or `--cached` is in use.
|
||||
|
||||
--allow-empty::
|
||||
Don't return error for patches containing no diff. This includes
|
||||
empty patches and patches with commit text only.
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
||||
|
@ -9,14 +9,14 @@ git-archimport - Import a GNU Arch repository into Git
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
|
||||
<archive/branch>[:<git-branch>] ...
|
||||
'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
|
||||
<archive>/<branch>[:<git-branch>]...
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
Imports a project from one or more GNU Arch repositories.
|
||||
It will follow branches
|
||||
and repositories within the namespaces defined by the <archive/branch>
|
||||
and repositories within the namespaces defined by the <archive>/<branch>
|
||||
parameters supplied. If it cannot find the remote branch a merge comes from
|
||||
it will just import it as a regular commit. If it can find it, it will mark it
|
||||
as a merge whenever possible (see discussion below).
|
||||
@ -27,7 +27,7 @@ import new branches within the provided roots.
|
||||
|
||||
It expects to be dealing with one project only. If it sees
|
||||
branches that have different roots, it will refuse to run. In that case,
|
||||
edit your <archive/branch> parameters to define clearly the scope of the
|
||||
edit your <archive>/<branch> parameters to define clearly the scope of the
|
||||
import.
|
||||
|
||||
'git archimport' uses `tla` extensively in the background to access the
|
||||
@ -42,7 +42,7 @@ incremental imports.
|
||||
|
||||
While 'git archimport' will try to create sensible branch names for the
|
||||
archives that it imports, it is also possible to specify Git branch names
|
||||
manually. To do so, write a Git branch name after each <archive/branch>
|
||||
manually. To do so, write a Git branch name after each <archive>/<branch>
|
||||
parameter, separated by a colon. This way, you can shorten the Arch
|
||||
branch names and convert Arch jargon to Git jargon, for example mapping a
|
||||
"PROJECT{litdd}devo{litdd}VERSION" branch to "master".
|
||||
@ -104,8 +104,8 @@ OPTIONS
|
||||
Override the default tempdir.
|
||||
|
||||
|
||||
<archive/branch>::
|
||||
Archive/branch identifier in a format that `tla log` understands.
|
||||
<archive>/<branch>::
|
||||
<archive>/<branch> identifier in a format that `tla log` understands.
|
||||
|
||||
|
||||
GIT
|
||||
|
@ -93,12 +93,19 @@ BACKEND EXTRA OPTIONS
|
||||
|
||||
zip
|
||||
~~~
|
||||
-0::
|
||||
Store the files instead of deflating them.
|
||||
-9::
|
||||
Highest and slowest compression level. You can specify any
|
||||
number from 1 to 9 to adjust compression speed and ratio.
|
||||
-<digit>::
|
||||
Specify compression level. Larger values allow the command
|
||||
to spend more time to compress to smaller size. Supported
|
||||
values are from `-0` (store-only) to `-9` (best ratio).
|
||||
Default is `-6` if not given.
|
||||
|
||||
tar
|
||||
~~~
|
||||
-<number>::
|
||||
Specify compression level. The value will be passed to the
|
||||
compression command configured in `tar.<format>.command`. See
|
||||
manual page of the configured command for the list of supported
|
||||
levels and the default level if this option isn't specified.
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
@ -11,8 +11,8 @@ SYNOPSIS
|
||||
'git blame' [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] [--incremental]
|
||||
[-L <range>] [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>]
|
||||
[--ignore-rev <rev>] [--ignore-revs-file <file>]
|
||||
[--progress] [--abbrev=<n>] [<rev> | --contents <file> | --reverse <rev>..<rev>]
|
||||
[--] <file>
|
||||
[--color-lines] [--color-by-age] [--progress] [--abbrev=<n>]
|
||||
[<rev> | --contents <file> | --reverse <rev>..<rev>] [--] <file>
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@ -93,6 +93,19 @@ include::blame-options.txt[]
|
||||
is used for a caret to mark the boundary commit.
|
||||
|
||||
|
||||
THE DEFAULT FORMAT
|
||||
------------------
|
||||
|
||||
When neither `--porcelain` nor `--incremental` option is specified,
|
||||
`git blame` will output annotation for each line with:
|
||||
|
||||
- abbreviated object name for the commit the line came from;
|
||||
- author ident (by default author name and date, unless `-s` or `-e`
|
||||
is specified); and
|
||||
- line number
|
||||
|
||||
before the line contents.
|
||||
|
||||
THE PORCELAIN FORMAT
|
||||
--------------------
|
||||
|
||||
|
@ -16,7 +16,8 @@ SYNOPSIS
|
||||
[--points-at <object>] [--format=<format>]
|
||||
[(-r | --remotes) | (-a | --all)]
|
||||
[--list] [<pattern>...]
|
||||
'git branch' [--track | --no-track] [-f] <branchname> [<start-point>]
|
||||
'git branch' [--track[=(direct|inherit)] | --no-track] [-f]
|
||||
[--recurse-submodules] <branchname> [<start-point>]
|
||||
'git branch' (--set-upstream-to=<upstream> | -u <upstream>) [<branchname>]
|
||||
'git branch' --unset-upstream [<branchname>]
|
||||
'git branch' (-m | -M) [<oldbranch>] <newbranch>
|
||||
@ -118,20 +119,21 @@ 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`).
|
||||
|
||||
-m::
|
||||
--move::
|
||||
Move/rename a branch and the corresponding reflog.
|
||||
Move/rename a branch, together with its config and reflog.
|
||||
|
||||
-M::
|
||||
Shortcut for `--move --force`.
|
||||
|
||||
-c::
|
||||
--copy::
|
||||
Copy a branch and the corresponding reflog.
|
||||
Copy a branch, together with its config and reflog.
|
||||
|
||||
-C::
|
||||
Shortcut for `--copy --force`.
|
||||
@ -205,24 +207,50 @@ This option is only applicable in non-verbose mode.
|
||||
Display the full sha1s in the output listing rather than abbreviating them.
|
||||
|
||||
-t::
|
||||
--track::
|
||||
--track[=(direct|inherit)]::
|
||||
When creating a new branch, set up `branch.<name>.remote` and
|
||||
`branch.<name>.merge` configuration entries to mark the
|
||||
start-point branch as "upstream" from the new branch. This
|
||||
`branch.<name>.merge` configuration entries to set "upstream" tracking
|
||||
configuration for the new branch. This
|
||||
configuration will tell git to show the relationship between the
|
||||
two branches in `git status` and `git branch -v`. Furthermore,
|
||||
it directs `git pull` without arguments to pull from the
|
||||
upstream when the new branch is checked out.
|
||||
+
|
||||
This behavior is the default when the start point is a remote-tracking branch.
|
||||
The exact upstream branch is chosen depending on the optional argument:
|
||||
`-t`, `--track`, or `--track=direct` means to use the start-point branch
|
||||
itself as the upstream; `--track=inherit` means to copy the upstream
|
||||
configuration of the start-point branch.
|
||||
+
|
||||
`--track=direct` is the default when the start point is a remote-tracking branch.
|
||||
Set the branch.autoSetupMerge configuration variable to `false` if you
|
||||
want `git switch`, `git checkout` and `git branch` to always behave as if `--no-track`
|
||||
were given. Set it to `always` if you want this behavior when the
|
||||
start-point is either a local or remote-tracking branch.
|
||||
start-point is either a local or remote-tracking branch. Set it to
|
||||
`inherit` if you want to copy the tracking configuration from the
|
||||
branch point.
|
||||
+
|
||||
See linkgit:git-pull[1] and linkgit:git-config[1] for additional discussion on
|
||||
how the `branch.<name>.remote` and `branch.<name>.merge` options are used.
|
||||
|
||||
--no-track::
|
||||
Do not set up "upstream" configuration, even if the
|
||||
branch.autoSetupMerge configuration variable is true.
|
||||
branch.autoSetupMerge configuration variable is set.
|
||||
|
||||
--recurse-submodules::
|
||||
THIS OPTION IS EXPERIMENTAL! Causes the current command to
|
||||
recurse into submodules if `submodule.propagateBranches` is
|
||||
enabled. See `submodule.propagateBranches` in
|
||||
linkgit:git-config[1]. Currently, only branch creation is
|
||||
supported.
|
||||
+
|
||||
When used in branch creation, a new branch <branchname> will be created
|
||||
in the superproject and all of the submodules in the superproject's
|
||||
<start-point>. In submodules, the branch will point to the submodule
|
||||
commit in the superproject's <start-point> but the branch's tracking
|
||||
information will be set up based on the submodule's branches and remotes
|
||||
e.g. `git branch --recurse-submodules topic origin/main` will create the
|
||||
submodule branch "topic" that points to the submodule commit in the
|
||||
superproject's "origin/main", but tracks the submodule's "origin/main".
|
||||
|
||||
--set-upstream::
|
||||
As this option had confusing syntax, it is no longer supported.
|
||||
|
@ -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>::
|
||||
|
@ -13,26 +13,53 @@ SYNOPSIS
|
||||
[--version=<version>] <file> <git-rev-list-args>
|
||||
'git bundle' verify [-q | --quiet] <file>
|
||||
'git bundle' list-heads <file> [<refname>...]
|
||||
'git bundle' unbundle <file> [<refname>...]
|
||||
'git bundle' unbundle [--progress] <file> [<refname>...]
|
||||
|
||||
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, and 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
|
||||
-------
|
||||
@ -48,8 +75,11 @@ verify <file>::
|
||||
cleanly to the current repository. This includes checks on the
|
||||
bundle format itself as well as checking that the prerequisite
|
||||
commits exist and are fully linked in the current repository.
|
||||
'git bundle' prints a list of missing commits, if any, and exits
|
||||
with a non-zero status.
|
||||
Then, 'git bundle' prints a list of missing commits, if any.
|
||||
Finally, information about additional capabilities, such as "object
|
||||
filter", is printed. See "Capabilities" in link:technical/bundle-format.html
|
||||
for more information. The exit code is zero for success, but will
|
||||
be nonzero if the bundle file is invalid.
|
||||
|
||||
list-heads <file>::
|
||||
Lists the references defined in the bundle. If followed by a
|
||||
@ -117,28 +147,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 be 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 +239,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 +290,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 +301,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 +314,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
|
||||
|
@ -9,8 +9,14 @@ git-cat-file - Provide content or type and size information for repository objec
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git cat-file' (-t [--allow-unknown-type]| -s [--allow-unknown-type]| -e | -p | <type> | --textconv | --filters ) [--path=<path>] <object>
|
||||
'git cat-file' (--batch[=<format>] | --batch-check[=<format>]) [ --textconv | --filters ] [--follow-symlinks]
|
||||
'git cat-file' <type> <object>
|
||||
'git cat-file' (-e | -p) <object>
|
||||
'git cat-file' (-t | -s) [--allow-unknown-type] <object>
|
||||
'git cat-file' (--batch | --batch-check | --batch-command) [--batch-all-objects]
|
||||
[--buffer] [--follow-symlinks] [--unordered]
|
||||
[--textconv | --filters]
|
||||
'git cat-file' (--textconv | --filters)
|
||||
[<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@ -90,19 +96,48 @@ OPTIONS
|
||||
need to specify the path, separated by whitespace. See the
|
||||
section `BATCH OUTPUT` below for details.
|
||||
|
||||
--batch-command::
|
||||
--batch-command=<format>::
|
||||
Enter a command mode that reads commands and arguments from stdin. May
|
||||
only be combined with `--buffer`, `--textconv` or `--filters`. In the
|
||||
case of `--textconv` or `--filters`, the input lines also need to specify
|
||||
the path, separated by whitespace. See the section `BATCH OUTPUT` below
|
||||
for details.
|
||||
+
|
||||
`--batch-command` recognizes the following commands:
|
||||
+
|
||||
--
|
||||
contents <object>::
|
||||
Print object contents for object reference `<object>`. This corresponds to
|
||||
the output of `--batch`.
|
||||
|
||||
info <object>::
|
||||
Print object info for object reference `<object>`. This corresponds to the
|
||||
output of `--batch-check`.
|
||||
|
||||
flush::
|
||||
Used with `--buffer` to execute all preceding commands that were issued
|
||||
since the beginning or since the last flush was issued. When `--buffer`
|
||||
is used, no output will come until a `flush` is issued. When `--buffer`
|
||||
is not used, commands are flushed each time without issuing `flush`.
|
||||
--
|
||||
+
|
||||
|
||||
--batch-all-objects::
|
||||
Instead of reading a list of objects on stdin, perform the
|
||||
requested batch operation on all objects in the repository and
|
||||
any alternate object stores (not just reachable objects).
|
||||
Requires `--batch` or `--batch-check` be specified. Note that
|
||||
the objects are visited in order sorted by their hashes.
|
||||
Requires `--batch` or `--batch-check` be specified. By default,
|
||||
the objects are visited in order sorted by their hashes; see
|
||||
also `--unordered` below. Objects are presented as-is, without
|
||||
respecting the "replace" mechanism of linkgit:git-replace[1].
|
||||
|
||||
--buffer::
|
||||
Normally batch output is flushed after each object is output, so
|
||||
that a process can interactively read and write from
|
||||
`cat-file`. With this option, the output uses normal stdio
|
||||
buffering; this is much more efficient when invoking
|
||||
`--batch-check` on a large number of objects.
|
||||
`--batch-check` or `--batch-command` on a large number of objects.
|
||||
|
||||
--unordered::
|
||||
When `--batch-all-objects` is in use, visit objects in an
|
||||
@ -194,6 +229,13 @@ from stdin, one per line, and print information about them. By default,
|
||||
the whole line is considered as an object, as if it were fed to
|
||||
linkgit:git-rev-parse[1].
|
||||
|
||||
When `--batch-command` is given, `cat-file` will read commands from stdin,
|
||||
one per line, and print information based on the command given. With
|
||||
`--batch-command`, the `info` command followed by an object will print
|
||||
information about the object the same way `--batch-check` would, and the
|
||||
`contents` command followed by an object prints contents in the same way
|
||||
`--batch` would.
|
||||
|
||||
You can specify the information shown for each object by using a custom
|
||||
`<format>`. The `<format>` is copied literally to stdout for each
|
||||
object, with placeholders of the form `%(atom)` expanded, followed by a
|
||||
@ -229,9 +271,9 @@ newline. The available atoms are:
|
||||
If no format is specified, the default format is `%(objectname)
|
||||
%(objecttype) %(objectsize)`.
|
||||
|
||||
If `--batch` is specified, the object information is followed by the
|
||||
object contents (consisting of `%(objectsize)` bytes), followed by a
|
||||
newline.
|
||||
If `--batch` is specified, or if `--batch-command` is used with the `contents`
|
||||
command, the object information is followed by the object contents (consisting
|
||||
of `%(objectsize)` bytes), followed by a newline.
|
||||
|
||||
For example, `--batch` without a custom format would produce:
|
||||
|
||||
|
@ -33,7 +33,7 @@ OPTIONS
|
||||
Instead of printing the paths that are excluded, for each path
|
||||
that matches an exclude pattern, print the exclude pattern
|
||||
together with the path. (Matching an exclude pattern usually
|
||||
means the path is excluded, but if the pattern begins with '!'
|
||||
means the path is excluded, but if the pattern begins with "`!`"
|
||||
then it is a negated pattern and matching it means the path is
|
||||
NOT excluded.)
|
||||
+
|
||||
@ -77,7 +77,7 @@ If `--verbose` is specified, the output is a series of lines of the form:
|
||||
<pathname> is the path of a file being queried, <pattern> is the
|
||||
matching pattern, <source> is the pattern's source file, and <linenum>
|
||||
is the line number of the pattern within that source. If the pattern
|
||||
contained a `!` prefix or `/` suffix, it will be preserved in the
|
||||
contained a "`!`" prefix or "`/`" suffix, it will be preserved in the
|
||||
output. <source> will be an absolute path when referring to the file
|
||||
configured by `core.excludesFile`, or relative to the repository root
|
||||
when referring to `.git/info/exclude` or a per-directory exclude file.
|
||||
|
@ -12,6 +12,7 @@ SYNOPSIS
|
||||
'git checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=<string>]
|
||||
[--stage=<number>|all]
|
||||
[--temp]
|
||||
[--ignore-skip-worktree-bits]
|
||||
[-z] [--stdin]
|
||||
[--] [<file>...]
|
||||
|
||||
@ -37,8 +38,9 @@ OPTIONS
|
||||
|
||||
-a::
|
||||
--all::
|
||||
checks out all files in the index. Cannot be used
|
||||
together with explicit filenames.
|
||||
checks out all files in the index except for those with the
|
||||
skip-worktree bit set (see `--ignore-skip-worktree-bits`).
|
||||
Cannot be used together with explicit filenames.
|
||||
|
||||
-n::
|
||||
--no-create::
|
||||
@ -59,6 +61,10 @@ OPTIONS
|
||||
write the content to temporary files. The temporary name
|
||||
associations will be written to stdout.
|
||||
|
||||
--ignore-skip-worktree-bits::
|
||||
Check out all files, including those with the skip-worktree bit
|
||||
set.
|
||||
|
||||
--stdin::
|
||||
Instead of taking list of paths from the command line,
|
||||
read list of paths from the standard input. Paths are
|
||||
|
@ -11,7 +11,7 @@ SYNOPSIS
|
||||
'git checkout' [-q] [-f] [-m] [<branch>]
|
||||
'git checkout' [-q] [-f] [-m] --detach [<branch>]
|
||||
'git checkout' [-q] [-f] [-m] [--detach] <commit>
|
||||
'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
|
||||
'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]
|
||||
'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>...
|
||||
'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] --pathspec-from-file=<file> [--pathspec-file-nul]
|
||||
'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]
|
||||
@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
|
||||
rather expensive side-effects to show only the tracking information,
|
||||
if exists, for the current branch.
|
||||
|
||||
'git checkout' -b|-B <new_branch> [<start point>]::
|
||||
'git checkout' -b|-B <new-branch> [<start-point>]::
|
||||
|
||||
Specifying `-b` causes a new branch to be created as if
|
||||
linkgit:git-branch[1] were called and then checked out. In
|
||||
@ -52,11 +52,11 @@ if exists, for the current branch.
|
||||
`--track` without `-b` implies branch creation; see the
|
||||
description of `--track` below.
|
||||
+
|
||||
If `-B` is given, `<new_branch>` is created if it doesn't exist; otherwise, it
|
||||
If `-B` is given, `<new-branch>` is created if it doesn't exist; otherwise, it
|
||||
is reset. This is the transactional equivalent of
|
||||
+
|
||||
------------
|
||||
$ git branch -f <branch> [<start point>]
|
||||
$ git branch -f <branch> [<start-point>]
|
||||
$ git checkout <branch>
|
||||
------------
|
||||
+
|
||||
@ -118,8 +118,9 @@ OPTIONS
|
||||
-f::
|
||||
--force::
|
||||
When switching branches, proceed even if the index or the
|
||||
working tree differs from `HEAD`. This is used to throw away
|
||||
local changes.
|
||||
working tree differs from `HEAD`, and even if there are untracked
|
||||
files in the way. This is used to throw away local changes and
|
||||
any untracked files or directories that are in the way.
|
||||
+
|
||||
When checking out paths from the index, do not fail upon unmerged
|
||||
entries; instead, unmerged entries are ignored.
|
||||
@ -144,18 +145,18 @@ as `ours` (i.e. "our shared canonical history"), while what you did
|
||||
on your side branch as `theirs` (i.e. "one contributor's work on top
|
||||
of it").
|
||||
|
||||
-b <new_branch>::
|
||||
Create a new branch named `<new_branch>` and start it at
|
||||
`<start_point>`; see linkgit:git-branch[1] for details.
|
||||
-b <new-branch>::
|
||||
Create a new branch named `<new-branch>` and start it at
|
||||
`<start-point>`; see linkgit:git-branch[1] for details.
|
||||
|
||||
-B <new_branch>::
|
||||
Creates the branch `<new_branch>` and start it at `<start_point>`;
|
||||
if it already exists, then reset it to `<start_point>`. This is
|
||||
-B <new-branch>::
|
||||
Creates the branch `<new-branch>` and start it at `<start-point>`;
|
||||
if it already exists, then reset it to `<start-point>`. This is
|
||||
equivalent to running "git branch" with "-f"; see
|
||||
linkgit:git-branch[1] for details.
|
||||
|
||||
-t::
|
||||
--track::
|
||||
--track[=(direct|inherit)]::
|
||||
When creating a new branch, set up "upstream" configuration. See
|
||||
"--track" in linkgit:git-branch[1] for details.
|
||||
+
|
||||
@ -209,16 +210,16 @@ variable.
|
||||
`<commit>` is not a branch name. See the "DETACHED HEAD" section
|
||||
below for details.
|
||||
|
||||
--orphan <new_branch>::
|
||||
Create a new 'orphan' branch, named `<new_branch>`, started from
|
||||
`<start_point>` and switch to it. The first commit made on this
|
||||
--orphan <new-branch>::
|
||||
Create a new 'orphan' branch, named `<new-branch>`, started from
|
||||
`<start-point>` and switch to it. The first commit made on this
|
||||
new branch will have no parents and it will be the root of a new
|
||||
history totally disconnected from all the other branches and
|
||||
commits.
|
||||
+
|
||||
The index and the working tree are adjusted as if you had previously run
|
||||
`git checkout <start_point>`. This allows you to start a new history
|
||||
that records a set of paths similar to `<start_point>` by easily running
|
||||
`git checkout <start-point>`. This allows you to start a new history
|
||||
that records a set of paths similar to `<start-point>` by easily running
|
||||
`git commit -a` to make the root commit.
|
||||
+
|
||||
This can be useful when you want to publish the tree from a commit
|
||||
@ -228,7 +229,7 @@ whose full history contains proprietary or otherwise encumbered bits of
|
||||
code.
|
||||
+
|
||||
If you want to start a disconnected history that records a set of paths
|
||||
that is totally different from the one of `<start_point>`, then you should
|
||||
that is totally different from the one of `<start-point>`, then you should
|
||||
clear the index and the working tree right after creating the orphan
|
||||
branch by running `git rm -rf .` from the top level of the working tree.
|
||||
Afterwards you will be ready to prepare your new files, repopulating the
|
||||
@ -265,8 +266,7 @@ When switching branches with `--merge`, staged changes may be lost.
|
||||
The same as `--merge` option above, but changes the way the
|
||||
conflicting hunks are presented, overriding the
|
||||
`merge.conflictStyle` configuration variable. Possible values are
|
||||
"merge" (default) and "diff3" (in addition to what is shown by
|
||||
"merge" style, shows the original contents).
|
||||
"merge" (default), "diff3", and "zdiff3".
|
||||
|
||||
-p::
|
||||
--patch::
|
||||
@ -340,10 +340,10 @@ As a special case, you may use `A...B` as a shortcut for the
|
||||
merge base of `A` and `B` if there is exactly one merge base. You can
|
||||
leave out at most one of `A` and `B`, in which case it defaults to `HEAD`.
|
||||
|
||||
<new_branch>::
|
||||
<new-branch>::
|
||||
Name for the new branch.
|
||||
|
||||
<start_point>::
|
||||
<start-point>::
|
||||
The name of a commit at which to start the new branch; see
|
||||
linkgit:git-branch[1] for details. Defaults to `HEAD`.
|
||||
+
|
||||
|
@ -8,7 +8,7 @@ git-cherry-pick - Apply the changes introduced by some existing commits
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
|
||||
'git cherry-pick' [--edit] [-n] [-m <parent-number>] [-s] [-x] [--ff]
|
||||
[-S[<keyid>]] <commit>...
|
||||
'git cherry-pick' (--continue | --skip | --abort | --quit)
|
||||
|
||||
@ -81,8 +81,8 @@ OPTIONS
|
||||
described above, and `-r` was to disable it. Now the
|
||||
default is not to do `-x` so this option is a no-op.
|
||||
|
||||
-m parent-number::
|
||||
--mainline parent-number::
|
||||
-m <parent-number>::
|
||||
--mainline <parent-number>::
|
||||
Usually you cannot cherry-pick a merge because you do not know which
|
||||
side of the merge should be considered the mainline. This
|
||||
option specifies the parent number (starting from 1) of
|
||||
|
@ -9,14 +9,14 @@ git-clone - Clone a repository into a new directory
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git clone' [--template=<template_directory>]
|
||||
'git clone' [--template=<template-directory>]
|
||||
[-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]
|
||||
[-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]
|
||||
[--dissociate] [--separate-git-dir <git dir>]
|
||||
[--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-]reject-shallow]
|
||||
[--filter=<filter>] [--] <repository>
|
||||
[--filter=<filter> [--also-filter-submodules]] [--] <repository>
|
||||
[<directory>]
|
||||
|
||||
DESCRIPTION
|
||||
@ -167,10 +167,10 @@ objects from the source repository into a pack in the cloned repository.
|
||||
configuration variables are created.
|
||||
|
||||
--sparse::
|
||||
Initialize the sparse-checkout file so the working
|
||||
directory starts with only the files in the root
|
||||
of the repository. The sparse-checkout file can be
|
||||
modified to grow the working directory as needed.
|
||||
Employ a sparse-checkout, with only files in the toplevel
|
||||
directory initially being present. The
|
||||
linkgit:git-sparse-checkout[1] command can be used to grow the
|
||||
working directory as needed.
|
||||
|
||||
--filter=<filter-spec>::
|
||||
Use the partial clone feature and request that the server sends
|
||||
@ -182,6 +182,11 @@ objects from the source repository into a pack in the cloned repository.
|
||||
at least `<size>`. For more details on filter specifications, see
|
||||
the `--filter` option in linkgit:git-rev-list[1].
|
||||
|
||||
--also-filter-submodules::
|
||||
Also apply the partial clone filter to any submodules in the repository.
|
||||
Requires `--filter` and `--recurse-submodules`. This can be turned on by
|
||||
default by setting the `clone.filterSubmodules` config option.
|
||||
|
||||
--mirror::
|
||||
Set up a mirror of the source repository. This implies `--bare`.
|
||||
Compared to `--bare`, `--mirror` not only maps local branches of the
|
||||
@ -211,7 +216,7 @@ objects from the source repository into a pack in the cloned repository.
|
||||
via ssh, this specifies a non-default path for the command
|
||||
run on the other end.
|
||||
|
||||
--template=<template_directory>::
|
||||
--template=<template-directory>::
|
||||
Specify the directory from which templates will be used;
|
||||
(See the "TEMPLATE DIRECTORY" section of linkgit:git-init[1].)
|
||||
|
||||
@ -294,7 +299,7 @@ or `--mirror` is given)
|
||||
superproject's recorded SHA-1. Equivalent to passing `--remote` to
|
||||
`git submodule update`.
|
||||
|
||||
--separate-git-dir=<git dir>::
|
||||
--separate-git-dir=<git-dir>::
|
||||
Instead of placing the cloned repository where it is supposed
|
||||
to be, place the cloned repository at the specified directory,
|
||||
then make a filesystem-agnostic Git symbolic link to there.
|
||||
|
@ -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.
|
||||
|
||||
|
@ -212,8 +212,9 @@ include::signoff-option.txt[]
|
||||
each trailer would appear, and other details.
|
||||
|
||||
-n::
|
||||
--no-verify::
|
||||
This option bypasses the pre-commit and commit-msg hooks.
|
||||
--[no-]verify::
|
||||
By default, the pre-commit and commit-msg hooks are run.
|
||||
When any of `--no-verify` or `-n` is given, these are bypassed.
|
||||
See also linkgit:githooks[5].
|
||||
|
||||
--allow-empty::
|
||||
|
@ -9,20 +9,20 @@ git-config - Get and set repository or global options
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git config' [<file-option>] [--type=<type>] [--fixed-value] [--show-origin] [--show-scope] [-z|--null] name [value [value-pattern]]
|
||||
'git config' [<file-option>] [--type=<type>] --add name value
|
||||
'git config' [<file-option>] [--type=<type>] [--fixed-value] --replace-all name value [value-pattern]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get name [value-pattern]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get-all name [value-pattern]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] [--name-only] --get-regexp name_regex [value-pattern]
|
||||
'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch name URL
|
||||
'git config' [<file-option>] [--fixed-value] --unset name [value-pattern]
|
||||
'git config' [<file-option>] [--fixed-value] --unset-all name [value-pattern]
|
||||
'git config' [<file-option>] --rename-section old_name new_name
|
||||
'git config' [<file-option>] --remove-section name
|
||||
'git config' [<file-option>] [--type=<type>] [--fixed-value] [--show-origin] [--show-scope] [-z|--null] <name> [<value> [<value-pattern>]]
|
||||
'git config' [<file-option>] [--type=<type>] --add <name> <value>
|
||||
'git config' [<file-option>] [--type=<type>] [--fixed-value] --replace-all <name> <value> [<value-pattern>]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get <name> [<value-pattern>]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get-all <name> [<value-pattern>]
|
||||
'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] [--name-only] --get-regexp <name-regex> [<value-pattern>]
|
||||
'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch <name> <URL>
|
||||
'git config' [<file-option>] [--fixed-value] --unset <name> [<value-pattern>]
|
||||
'git config' [<file-option>] [--fixed-value] --unset-all <name> [<value-pattern>]
|
||||
'git config' [<file-option>] --rename-section <old-name> <new-name>
|
||||
'git config' [<file-option>] --remove-section <name>
|
||||
'git config' [<file-option>] [--show-origin] [--show-scope] [-z|--null] [--name-only] -l | --list
|
||||
'git config' [<file-option>] --get-color name [default]
|
||||
'git config' [<file-option>] --get-colorbool name [stdout-is-tty]
|
||||
'git config' [<file-option>] --get-color <name> [<default>]
|
||||
'git config' [<file-option>] --get-colorbool <name> [<stdout-is-tty>]
|
||||
'git config' [<file-option>] -e | --edit
|
||||
|
||||
DESCRIPTION
|
||||
@ -71,6 +71,9 @@ 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
|
||||
-------
|
||||
@ -99,9 +102,9 @@ OPTIONS
|
||||
in which section and variable names are lowercased, but subsection
|
||||
names are not.
|
||||
|
||||
--get-urlmatch name URL::
|
||||
--get-urlmatch <name> <URL>::
|
||||
When given a two-part name section.key, the value for
|
||||
section.<url>.key whose <url> part matches the best to the
|
||||
section.<URL>.key whose <URL> part matches the best to the
|
||||
given URL is returned (if no such key exists, the value for
|
||||
section.key is used as a fallback). When given just the
|
||||
section as name, do so for all the keys in the section and
|
||||
@ -138,12 +141,16 @@ from all available files.
|
||||
See also <<FILES>>.
|
||||
|
||||
--worktree::
|
||||
Similar to `--local` except that `.git/config.worktree` is
|
||||
Similar to `--local` except that `$GIT_DIR/config.worktree` is
|
||||
read from or written to if `extensions.worktreeConfig` is
|
||||
present. If not it's the same as `--local`.
|
||||
enabled. If not it's the same as `--local`. Note that `$GIT_DIR`
|
||||
is equal to `$GIT_COMMON_DIR` for the main working tree, but is of
|
||||
the form `$GIT_DIR/worktrees/<id>/` for other working trees. See
|
||||
linkgit:git-worktree[1] to learn how to enable
|
||||
`extensions.worktreeConfig`.
|
||||
|
||||
-f config-file::
|
||||
--file config-file::
|
||||
-f <config-file>::
|
||||
--file <config-file>::
|
||||
For writing options: write to the specified file rather than the
|
||||
repository `.git/config`.
|
||||
+
|
||||
@ -152,7 +159,7 @@ available files.
|
||||
+
|
||||
See also <<FILES>>.
|
||||
|
||||
--blob blob::
|
||||
--blob <blob>::
|
||||
Similar to `--file` but use the given blob instead of a file. E.g.
|
||||
you can use 'master:.gitmodules' to read values from the file
|
||||
'.gitmodules' in the master branch. See "SPECIFYING REVISIONS"
|
||||
@ -243,18 +250,18 @@ Valid `<type>`'s include:
|
||||
all queried config options with the scope of that value
|
||||
(local, global, system, command).
|
||||
|
||||
--get-colorbool name [stdout-is-tty]::
|
||||
--get-colorbool <name> [<stdout-is-tty>]::
|
||||
|
||||
Find the color setting for `name` (e.g. `color.diff`) and output
|
||||
"true" or "false". `stdout-is-tty` should be either "true" or
|
||||
Find the color setting for `<name>` (e.g. `color.diff`) and output
|
||||
"true" or "false". `<stdout-is-tty>` should be either "true" or
|
||||
"false", and is taken into account when configuration says
|
||||
"auto". If `stdout-is-tty` is missing, then checks the standard
|
||||
"auto". If `<stdout-is-tty>` is missing, then checks the standard
|
||||
output of the command itself, and exits with status 0 if color
|
||||
is to be used, or exits with status 1 otherwise.
|
||||
When the color setting for `name` is undefined, the command uses
|
||||
`color.ui` as fallback.
|
||||
|
||||
--get-color name [default]::
|
||||
--get-color <name> [<default>]::
|
||||
|
||||
Find the color configured for `name` (e.g. `color.diff.new`) and
|
||||
output it as the ANSI color escape sequence to the standard
|
||||
|
@ -1,5 +1,5 @@
|
||||
git-credential-cache--daemon(1)
|
||||
===============================
|
||||
git-credential-cache{litdd}daemon(1)
|
||||
====================================
|
||||
|
||||
NAME
|
||||
----
|
||||
@ -8,7 +8,7 @@ git-credential-cache--daemon - Temporarily store user credentials in memory
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
git credential-cache--daemon [--debug] <socket>
|
||||
'git credential-cache{litdd}daemon' [--debug] <socket>
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
|
||||
SYNOPSIS
|
||||
--------
|
||||
------------------
|
||||
git credential <fill|approve|reject>
|
||||
'git credential' (fill|approve|reject)
|
||||
------------------
|
||||
|
||||
DESCRIPTION
|
||||
|
@ -9,8 +9,8 @@ git-cvsexportcommit - Export a single commit to a CVS checkout
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]
|
||||
[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
|
||||
'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>]
|
||||
[-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
|
@ -11,9 +11,9 @@ SYNOPSIS
|
||||
[verse]
|
||||
'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
|
||||
[-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
|
||||
[-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
|
||||
[-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
|
||||
[-r <remote>] [-R] [<CVS_module>]
|
||||
[-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
|
||||
[-a] [-m] [-M <regex>] [-S <regex>] [-L <commit-limit>]
|
||||
[-r <remote>] [-R] [<CVS-module>]
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
@ -59,7 +59,7 @@ OPTIONS
|
||||
from `CVS/Root`. If no such file exists, it checks for the
|
||||
`CVSROOT` environment variable.
|
||||
|
||||
<CVS_module>::
|
||||
<CVS-module>::
|
||||
The CVS module you want to import. Relative to <CVSROOT>.
|
||||
If not given, 'git cvsimport' tries to read it from
|
||||
`CVS/Repository`.
|
||||
|
@ -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]]
|
||||
|
@ -9,7 +9,7 @@ git-diff-files - Compares files in the working tree and the index
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] [<path>...]
|
||||
'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common-diff-options>] [<path>...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
@ -9,7 +9,7 @@ git-diff-index - Compare a tree to the working tree or index
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git diff-index' [-m] [--cached] [--merge-base] [<common diff options>] <tree-ish> [<path>...]
|
||||
'git diff-index' [-m] [--cached] [--merge-base] [<common-diff-options>] <tree-ish> [<path>...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
@ -11,7 +11,7 @@ SYNOPSIS
|
||||
[verse]
|
||||
'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]
|
||||
[-t] [-r] [-c | --cc] [--combined-all-paths] [--root] [--merge-base]
|
||||
[<common diff options>] <tree-ish> [<tree-ish>] [<path>...]
|
||||
[<common-diff-options>] <tree-ish> [<tree-ish>] [<path>...]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
|
@ -101,6 +101,10 @@ be in a separate packet, and the list must end with a flush packet.
|
||||
current shallow boundary instead of from the tip of each
|
||||
remote branch history.
|
||||
|
||||
--refetch::
|
||||
Skips negotiating commits with the server in order to fetch all matching
|
||||
objects. Use to reapply a new partial clone blob/tree filter.
|
||||
|
||||
--no-progress::
|
||||
Do not show the progress.
|
||||
|
||||
|
@ -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).
|
||||
|
||||
@ -287,12 +287,10 @@ include::transfer-data-leaks.txt[]
|
||||
|
||||
BUGS
|
||||
----
|
||||
Using --recurse-submodules can only fetch new commits in already checked
|
||||
out submodules right now. When e.g. upstream added a new submodule in the
|
||||
just fetched commits of the superproject the submodule itself cannot be
|
||||
fetched, making it impossible to check out that submodule later without
|
||||
having to do a fetch again. This is expected to be fixed in a future Git
|
||||
version.
|
||||
Using --recurse-submodules can only fetch new commits in submodules that are
|
||||
present locally e.g. in `$GIT_DIR/modules/`. If the upstream adds a new
|
||||
submodule, that submodule cannot be fetched until it is cloned e.g. by `git
|
||||
submodule update`. This is expected to be fixed in a future Git version.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
|
@ -9,7 +9,7 @@ git-fmt-merge-msg - Produce a merge commit message
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log]
|
||||
'git fmt-merge-msg' [-m <message>] [--into-name <branch>] [--log[=<n>] | --no-log]
|
||||
'git fmt-merge-msg' [-m <message>] [--log[=<n>] | --no-log] -F <file>
|
||||
|
||||
DESCRIPTION
|
||||
@ -44,6 +44,10 @@ OPTIONS
|
||||
Use <message> instead of the branch names for the first line
|
||||
of the log message. For use with `--log`.
|
||||
|
||||
--into-name <branch>::
|
||||
Prepare the merge message as if merging to the branch `<branch>`,
|
||||
instead of the name of the real branch to which the merge is made.
|
||||
|
||||
-F <file>::
|
||||
--file <file>::
|
||||
Take the list of merged objects from <file> instead of
|
||||
|
@ -235,6 +235,15 @@ and `date` to extract the named component. For email fields (`authoremail`,
|
||||
without angle brackets, and `:localpart` to get the part before the `@` symbol
|
||||
out of the trimmed email.
|
||||
|
||||
The raw data in an object is `raw`.
|
||||
|
||||
raw:size::
|
||||
The raw data size of the object.
|
||||
|
||||
Note that `--format=%(raw)` can not be used with `--python`, `--shell`, `--tcl`,
|
||||
because such language may not support arbitrary binary data in their string
|
||||
variable type.
|
||||
|
||||
The message in a commit or a tag object is `contents`, from which
|
||||
`contents:<part>` can be used to extract various parts out of:
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user