Compare commits
40 Commits
v2.32.0-rc
...
v2.32.0
Author | SHA1 | Date | |
---|---|---|---|
ebf3c04b26 | |||
15664a5f35 | |||
0d3505e286 | |||
0481af98ba | |||
ebee5580ca | |||
8e02217e10 | |||
33b62fba4d | |||
de65c76e55 | |||
cccdfd2243 | |||
d5e7f9632f | |||
a2bb98ba76 | |||
94d17948af | |||
c09b6306c6 | |||
0b18023d00 | |||
3714fbcb45 | |||
69c13a7880 | |||
2fb9d2596f | |||
6d09c53001 | |||
e54b271529 | |||
ed125c4f07 | |||
28abf260a5 | |||
ed1e674f4d | |||
3d33e36c47 | |||
e94005634c | |||
fe1c18ba4d | |||
c2529290f0 | |||
1df318be63 | |||
11998a0364 | |||
beded618b2 | |||
a6eff43bea | |||
733b9f59ba | |||
619418b993 | |||
4d0a2a608d | |||
99234d5905 | |||
7434b92798 | |||
9bafe049d6 | |||
e9488197ad | |||
2b95ebb4fd | |||
afb82d1db0 | |||
e5b66bb324 |
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
GVF=GIT-VERSION-FILE
|
||||
DEF_VER=v2.32.0-rc2
|
||||
DEF_VER=v2.32.0
|
||||
|
||||
LF='
|
||||
'
|
||||
|
@ -109,7 +109,8 @@ static int fsck_error_func(struct fsck_options *o,
|
||||
|
||||
static struct object_array pending;
|
||||
|
||||
static int mark_object(struct object *obj, int type, void *data, struct fsck_options *options)
|
||||
static int mark_object(struct object *obj, enum object_type type,
|
||||
void *data, struct fsck_options *options)
|
||||
{
|
||||
struct object *parent = data;
|
||||
|
||||
|
@ -1306,7 +1306,7 @@ __git_count_arguments ()
|
||||
local word i c=0
|
||||
|
||||
# Skip "git" (first argument)
|
||||
for ((i="$__git_cmd_idx"; i < ${#words[@]}; i++)); do
|
||||
for ((i=$__git_cmd_idx; i < ${#words[@]}; i++)); do
|
||||
word="${words[i]}"
|
||||
|
||||
case "$word" in
|
||||
|
@ -251,7 +251,7 @@ __git_zsh_main ()
|
||||
done
|
||||
;;
|
||||
(arg)
|
||||
local command="${words[1]}" __git_dir
|
||||
local command="${words[1]}" __git_dir __git_cmd_idx=1
|
||||
|
||||
if (( $+opt_args[--bare] )); then
|
||||
__git_dir='.'
|
||||
|
@ -40,6 +40,30 @@ language, so that the l10n coordinator only needs to interact with one
|
||||
person per language.
|
||||
|
||||
|
||||
Core translation
|
||||
----------------
|
||||
The core translation is the smallest set of work that must be completed
|
||||
for a new language translation. Because there are more than 5000 messages
|
||||
in the template message file "po/git.pot" that need to be translated,
|
||||
this is not a piece of cake for the contributor for a new language.
|
||||
|
||||
The core template message file which contains a small set of messages
|
||||
will be generated in "po-core/core.pot" automatically by running a helper
|
||||
program named "git-po-helper" (described later).
|
||||
|
||||
git-po-helper init --core XX.po
|
||||
|
||||
After translating the generated "po-core/XX.po", you can merge it to
|
||||
"po/XX.po" using the following commands:
|
||||
|
||||
msgcat po-core/XX.po po/XX.po -s -o /tmp/XX.po
|
||||
mv /tmp/XX.po po/XX.po
|
||||
git-po-helper update XX.po
|
||||
|
||||
Edit "po/XX.po" by hand to fix "fuzzy" messages, which may have misplaced
|
||||
translated messages and duplicate messages.
|
||||
|
||||
|
||||
Translation Process Flow
|
||||
------------------------
|
||||
The overall data-flow looks like this:
|
||||
@ -135,6 +159,18 @@ in the po/ directory, where XX.po is the file you want to update.
|
||||
Once you are done testing the translation (see below), commit the result
|
||||
and ask the l10n coordinator to pull from you.
|
||||
|
||||
Fuzzy translation
|
||||
-----------------
|
||||
|
||||
Fuzzy translation is a translation marked by comment "fuzzy" to let you
|
||||
know that the translation is out of date because the "msgid" has been
|
||||
changed. A fuzzy translation will be ignored when compiling using "msgfmt".
|
||||
Fuzzy translation can be marked by hands, but for most cases they are
|
||||
marked automatically when running "msgmerge" to update your "XX.po" file.
|
||||
|
||||
After fixing the corresponding translation, you must remove the "fuzzy"
|
||||
tag in the comment.
|
||||
|
||||
|
||||
Testing your changes
|
||||
--------------------
|
||||
@ -286,3 +322,80 @@ Testing marked strings
|
||||
|
||||
Git's tests are run under LANG=C LC_ALL=C. So the tests do not need be
|
||||
changed to account for translations as they're added.
|
||||
|
||||
|
||||
PO helper
|
||||
---------
|
||||
|
||||
To make the maintenance of XX.po easier, the l10n coordinator and l10n
|
||||
team leaders can use a helper program named "git-po-helper". It is a
|
||||
wrapper to gettext suite, specifically written for the purpose of Git
|
||||
l10n workflow.
|
||||
|
||||
To build and install the helper program from source, see
|
||||
[git-po-helper/README][].
|
||||
|
||||
Usage for git-po-helper:
|
||||
|
||||
- To start a new language translation:
|
||||
|
||||
git-po-helper init XX.po
|
||||
|
||||
- To update your XX.po file:
|
||||
|
||||
git-po-helper update XX.po
|
||||
|
||||
- To check commit log and syntax of XX.po:
|
||||
|
||||
git-po-helper check-po XX.po
|
||||
git-po-helper check-commits
|
||||
|
||||
Run "git-po-helper" without arguments to show usage.
|
||||
|
||||
|
||||
Conventions
|
||||
-----------
|
||||
|
||||
There are some conventions that l10n contributors must follow:
|
||||
|
||||
1. The subject of each l10n commit should be prefixed with "l10n: ".
|
||||
2. Do not use non-ASCII characters in the subject of a commit.
|
||||
3. The length of commit subject (first line of the commit log) should
|
||||
be less than 50 characters, and the length of other lines of the
|
||||
commit log should be no more than 72 characters.
|
||||
4. Add "Signed-off-by" trailer to your commit log, like other commits
|
||||
in Git. You can automatically add the trailer by committing with
|
||||
the following command:
|
||||
|
||||
git commit -s
|
||||
|
||||
5. Check syntax with "msgfmt" or the following command before creating
|
||||
your commit:
|
||||
|
||||
git-po-helper check-po <XX.po>
|
||||
|
||||
6. Squash trivial commits to make history clear.
|
||||
7. DO NOT edit files outside "po/" directory.
|
||||
8. Other subsystems ("git-gui", "gitk", and Git itself) have their
|
||||
own workflow. See [Documentation/SubmittingPatches][] for
|
||||
instructions on how to contribute patches to these subsystems.
|
||||
|
||||
To contribute for a new l10n language, contributor should follow
|
||||
additional conventions:
|
||||
|
||||
1. Initialize proper filename of the "XX.po" file conforming to
|
||||
iso-639 and iso-3166.
|
||||
2. Must complete a minimal translation based on the "po-core/core.pot"
|
||||
template. Using the following command to initialize the minimal
|
||||
"po-core/XX.po" file:
|
||||
|
||||
git-po-helper init --core <your-language>
|
||||
|
||||
3. Add a new entry in the "po/TEAMS" file with proper format, and check
|
||||
the syntax of "po/TEAMS" by runnning the following command:
|
||||
|
||||
git-po-helper team --check
|
||||
|
||||
|
||||
[git-po-helper/README]: https://github.com/git-l10n/git-po-helper#readme
|
||||
[Documentation/SubmittingPatches]: Documentation/SubmittingPatches
|
4
po/TEAMS
4
po/TEAMS
@ -80,6 +80,6 @@ Members: Ray Chen <oldsharp AT gmail.com>
|
||||
Fangyi Zhou <me AT fangyi.io>
|
||||
|
||||
Language: zh_TW (Traditional Chinese)
|
||||
Respository: https://github.com/l10n-tw/git-po
|
||||
Leader: Yi-Jyun Pan <pan93412 AT gmail.com>
|
||||
Repository: https://github.com/l10n-tw/git-po
|
||||
Leader: Yi-Jyun Pan <pan93412 AT gmail.com>
|
||||
Members: Franklin Weng <franklin AT goodhorse.idv.tw>
|
||||
|
7025
po/git.pot
7025
po/git.pot
File diff suppressed because it is too large
Load Diff
1237
po/pt_PT.po
1237
po/pt_PT.po
File diff suppressed because it is too large
Load Diff
2
po/ru.po
2
po/ru.po
@ -13497,7 +13497,7 @@ msgstr "разрешить обновление ссылки HEAD"
|
||||
#: builtin/fetch.c:174 builtin/fetch.c:180 builtin/pull.c:209
|
||||
#: builtin/pull.c:218
|
||||
msgid "deepen history of shallow clone"
|
||||
msgstr "улугубить историю частичного клона"
|
||||
msgstr "углубить историю частичного клона"
|
||||
|
||||
#: builtin/fetch.c:176 builtin/pull.c:212
|
||||
msgid "deepen history of shallow repository based on time"
|
||||
|
6994
po/zh_CN.po
6994
po/zh_CN.po
File diff suppressed because it is too large
Load Diff
7118
po/zh_TW.po
7118
po/zh_TW.po
File diff suppressed because it is too large
Load Diff
@ -27,7 +27,7 @@ test_checkout_workers () {
|
||||
rm -f "$trace_file" &&
|
||||
GIT_TRACE2="$(pwd)/$trace_file" "$@" 2>&8 &&
|
||||
|
||||
local workers=$(grep "child_start\[..*\] git checkout--worker" "$trace_file" | wc -l) &&
|
||||
local workers="$(grep "child_start\[..*\] git checkout--worker" "$trace_file" | wc -l)" &&
|
||||
test $workers -eq $expected_workers &&
|
||||
rm "$trace_file"
|
||||
} 8>&2 2>&4
|
||||
|
@ -57,8 +57,9 @@ void fprintf_or_die(FILE *f, const char *fmt, ...)
|
||||
|
||||
void fsync_or_die(int fd, const char *msg)
|
||||
{
|
||||
if (fsync(fd) < 0) {
|
||||
die_errno("fsync error on '%s'", msg);
|
||||
while (fsync(fd) < 0) {
|
||||
if (errno != EINTR)
|
||||
die_errno("fsync error on '%s'", msg);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user