Skip to content

Commit e17ba13

Browse files
committed
Merge branch 'explain_translation'
2 parents ca32012 + 1c45e68 commit e17ba13

File tree

3 files changed

+119
-57
lines changed

3 files changed

+119
-57
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# Contributing to Pro Git (2nd Edition)
22

3-
43
## Licensing
54

65
By opening a pull request to this repository, you agree to provide your work under the [project license](LICENSE.asc).
@@ -42,57 +41,4 @@ Give it a name that matches the destination PNG filename, relative from the root
4241

4342
## Translations
4443

45-
Translations to other languages are highly encouraged but handled a little differently than the first edition.
46-
We now keep each translation in a separate repository.
47-
48-
Since each translation is a different repository, we can also have different maintainers for each project.
49-
The Pro Git team simply pulls them in and builds them for the translation teams on the git-scm.com website.
50-
51-
### Existing Projects
52-
53-
If you wish to help at translating Progit 2nd edition to your
54-
language, first check already existing projects and get in touch with
55-
the people in charge of them if there's already one.
56-
57-
Existing projects include:
58-
59-
Language | Project
60-
------------ | -------------
61-
Беларуская | [progit/progit2-be](https://github.com/progit/progit2-be)
62-
Čeština | [progit-cs/progit2-cs](https://github.com/progit-cs/progit2-cs)
63-
English | [progit/progit2](https://github.com/progit/progit2)
64-
Español | [progit/progit2-es](https://github.com/progit/progit2-es)
65-
Français | [progit/progit2-fr](https://github.com/progit/progit2-fr)
66-
Deutsch | [progit-de/progit2](https://github.com/progit-de/progit2)
67-
Ελληνικά | [progit2-gr/progit2](https://github.com/progit2-gr/progit2)
68-
Indonesian | [progit/progit2-id](https://github.com/progit/progit2-id)
69-
Italiano | [progit/progit2-it](https://github.com/progit/progit2-it)
70-
日本語 | [progit/progit2-ja](https://github.com/progit/progit2-ja)
71-
한국어 | [progit/progit2-ko](https://github.com/progit/progit2-ko)
72-
Bahasa Melayu| [progit2-ms/progit2](https://github.com/progit2-ms/progit2)
73-
Nederlands | [progit/progit2-nl](https://github.com/progit/progit2-nl)
74-
Polski | [progit2-pl/progit2-pl](https://github.com/progit2-pl/progit2-pl)
75-
Português (Brasil) | [progit2-pt-br/progit2](https://github.com/progit2-pt-br/progit2)
76-
Русский | [progit/progit2-ru](https://github.com/progit/progit2-ru)
77-
Slovenščina | [progit/progit2-sl](https://github.com/progit/progit2-sl)
78-
Српски | [progit/progit2-sr](https://github.com/progit/progit2-sr)
79-
Tagalog | [progit2-tl/progit2](https://github.com/progit2-tl/progit2)
80-
Türkçe | [progit/progit2-tr](https://github.com/progit/progit2-tr)
81-
Українська| [progit/progit2-uk](https://github.com/progit/progit2-uk)
82-
Ўзбекча | [progit/progit2-uz](https://github.com/progit/progit2-uz)
83-
简体中文 | [progit/progit2-zh](https://github.com/progit/progit2-zh)
84-
正體中文 | [progit/progit2-zh-tw](https://github.com/progit/progit2-zh-tw)
85-
86-
### Your Language does not Exist
87-
88-
Then you're lucky! You're gonna be the initiator of a new translation project!
89-
90-
You can start to make your own version with the second edition in English, available here. To do so,
91-
92-
1. Pick your the [ISO 639 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) and create a GitHub organization, say `progit2-[your code]` on github
93-
2. Create a project progit2
94-
3. Copy the structure of progit/progit2 (this project) in your project and start translating. You can reuse some material from the first edition, but beware that:
95-
1. the text has been reworked in numerous parts
96-
2. the markup has changed from markdown to [asciidoc](http://asciidoc.org)
97-
4. Push to the new repo a few translated chapters
98-
5. Ping an organizer so that the second edition of Progit in your language is pushed on git-scm.com.
44+
If you would like to contribute to translating Pro Git into your language, take a look at [TRANSLATING.md](TRANSLATING.md).

README.asc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ A couple of things have changed since open sourcing the first edition.
1010
For one, we've moved from Markdown to the amazing Asciidoc format for the text of the book.
1111

1212
We've also moved to keeping the translations in separate repositories rather than subdirectories of the English repository.
13-
See link:CONTRIBUTING.md[the Contributing document] for more information.
13+
See link:TRANSLATING.md[the translating document] for more information.
1414

1515
== How To Generate the Book
1616

@@ -53,4 +53,4 @@ The issue may have already been corrected, but the changes have not been deploye
5353

5454
== Contributing
5555

56-
If you'd like to help out by making a change or contributing a translation, take a look at the link:CONTRIBUTING.md[contributor's guide].
56+
If you'd like to help out by making a change, take a look at the link:CONTRIBUTING.md[contributor's guide].

TRANSLATING.md

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
# Translating Pro Git (2nd Edition)
2+
3+
The translation are managed in a decentralized way, with each translation teams maintaining their own project. Since each translation is a different repository, maintainers teams are self organized for each project.
4+
5+
The Pro Git team simply pulls them in and builds them for the translation teams on the git-scm.com website.
6+
7+
## A Word About the Activity of Translating
8+
9+
Pro Git is a book about a technical tool. As such it combines a double difficulty for translators:
10+
11+
* The translation of a book, even in parts requires that the translators be aware of the whole content of book. This usually requires for each translator to have read the book and to agree with some common style of output. These rules ensure that the reader won't feel transitions in the text when switching from a part produced by one translator to a part from another one.
12+
* Git is a computer tool. Pro Git tries to make it affordable to not so technical-savy people and it's really good that the translators do not work on the core of git, because it's a user's perspective that is needed for the most part of the book. That also means that the translation may be deceiving if the translator has never used Git. Good translators must be Git users to actually keep Progit understandable.
13+
14+
Moreover, the book was written in a formatting language called [Asciidoc](http://asciidoctor.org/). Some parts of the files making up the book are in fact Asciidoc commands. Upsetting these commands will make it impossible to assemble and to compile of the files into the PDF, epub and html output.
15+
16+
Be sure to have read and understood the basics of [how Asciidoc formatting works](https://asciidoctor.org/docs/asciidoc-syntax-quick-reference/) before starting to change any file.
17+
18+
Translating Pro Git is such an endeavor that if you don't want to loose your energy on poor results, stress and deceived expectations, you have to set up, enforce and abide by rules stemming from these basic advices.
19+
20+
## Translating the Book to Another Language
21+
22+
### Existing Projects
23+
24+
If you wish to help at translating Progit 2nd edition to your language, first check for an already existing project in the following list and get in touch with the people in charge of itif there's already one. Go to the project page, open an issue, present yourself and ask what can be done.
25+
26+
Existing projects include:
27+
28+
Language | Project
29+
------------ | -------------
30+
Беларуская | [progit/progit2-be](https://github.com/progit/progit2-be)
31+
Čeština | [progit-cs/progit2-cs](https://github.com/progit-cs/progit2-cs)
32+
English | [progit/progit2](https://github.com/progit/progit2)
33+
Español | [progit/progit2-es](https://github.com/progit/progit2-es)
34+
Français | [progit/progit2-fr](https://github.com/progit/progit2-fr)
35+
Deutsch | [progit-de/progit2](https://github.com/progit-de/progit2)
36+
Ελληνικά | [progit2-gr/progit2](https://github.com/progit2-gr/progit2)
37+
Indonesian | [progit/progit2-id](https://github.com/progit/progit2-id)
38+
Italiano | [progit/progit2-it](https://github.com/progit/progit2-it)
39+
日本語 | [progit/progit2-ja](https://github.com/progit/progit2-ja)
40+
한국어 | [progit/progit2-ko](https://github.com/progit/progit2-ko)
41+
Bahasa Melayu| [progit2-ms/progit2](https://github.com/progit2-ms/progit2)
42+
Nederlands | [progit/progit2-nl](https://github.com/progit/progit2-nl)
43+
Polski | [progit2-pl/progit2-pl](https://github.com/progit2-pl/progit2-pl)
44+
Português (Brasil) | [progit2-pt-br/progit2](https://github.com/progit2-pt-br/progit2)
45+
Русский | [progit/progit2-ru](https://github.com/progit/progit2-ru)
46+
Slovenščina | [progit/progit2-sl](https://github.com/progit/progit2-sl)
47+
Српски | [progit/progit2-sr](https://github.com/progit/progit2-sr)
48+
Tagalog | [progit2-tl/progit2](https://github.com/progit2-tl/progit2)
49+
Türkçe | [progit/progit2-tr](https://github.com/progit/progit2-tr)
50+
Українська| [progit/progit2-uk](https://github.com/progit/progit2-uk)
51+
Ўзбекча | [progit/progit2-uz](https://github.com/progit/progit2-uz)
52+
简体中文 | [progit/progit2-zh](https://github.com/progit/progit2-zh)
53+
正體中文 | [progit/progit2-zh-tw](https://github.com/progit/progit2-zh-tw)
54+
55+
### Your Language is not Listed
56+
57+
Then you're lucky! You're gonna be the initiator of a new translation project!
58+
59+
You can start to make your own version with the second edition in English, available here. To do so,
60+
61+
1. Pick your the [ISO 639 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) and [create a GitHub organization](https://help.github.com/articles/creating-a-new-organization-from-scratch/), say `progit2-[your code]` on github
62+
2. Create a project progit2
63+
3. Copy the structure of progit/progit2 (this project) in your project and start translating. You can reuse some material from the first edition, but beware that:
64+
1. the text has been reworked in numerous parts
65+
2. the markup has changed from markdown to [asciidoc](http://asciidoc.org)
66+
4. Push to the new repo a few translated chapters
67+
5. Ping an organizer so that the second edition of Progit in your language is pushed on git-scm.com.
68+
69+
### Updating the Status of Your Translation
70+
71+
On git-scm.com, the translations are listed in three categories:
72+
73+
1. Translation just started. The introduction is translated at least, but there's not much to read. It's time to translate the meat of the book.
74+
2. Partially translated. The chapters up to chapter 6 have been translated. The book is becoming useful to help the reader become a fluent Git user.
75+
3. Fully Translated. The book is almost fully translated.
76+
77+
Once you have reached one of these levels, just contact the maintainers of the git-scm site to make your translation appear in the right category.
78+
79+
## Using Travis-CI for Continuous Integration
80+
81+
Travis-CI is a [continuous integration](https://en.wikipedia.org/wiki/Continuous_integration) service that fits nicely with GitHub. It can be used to automatically check that the pull-requests from the collaborators don't break the Asciidoc markup but can also provide compiled versions of the books.
82+
83+
Setting up Travis-CI requires to have administrative privileges over the repository. If you're not an administrator of the repository, let them know that they can enhance the visibility of the project by doing the following steps.
84+
85+
### Checking the Validity of the Text
86+
87+
This is the most useful set up for contributors. It allows to check at any moment that the book compiles properly and provides the same checks for pull-requests.
88+
89+
#### Registering for CI
90+
91+
If you don't already have an account at travis-ci.org, then go to [their page](https://travis-ci.org/) and log in. Otherwise you can register with your GitHub account.
92+
93+
Register your project in Travis. If a build is not fired automatically, it can be forced. The logs of build provide useful data when the build fails.
94+
95+
Please refer to the documentation on Travis-ci.org for further information on using their system.
96+
97+
#### Setting up Your Repo for CI
98+
99+
Travis-CI works by scanning your project's root directory for a file named `.travis.yml` and following the recipe that it contains. The good news is that you don't really need to understand how all of this works. There's a project already set up to simplify the setup. Download the file [here](https://raw.githubusercontent.com/progit/progit2-pub/master/travis.yml) and save it as `.travis.yml` in your working copy. Commit it and push it; that should fire up a compilation and a check of the book's contents.
100+
101+
102+
### Setting Up a Publication Chain for Ebooks
103+
104+
This is a quite technical task. Please ping @jnavila for this.
105+
106+
## Beyond Progit
107+
108+
Translating the book is the first step. Once this is finished, you could consider translating the user interface of Git itself.
109+
110+
This task requires a more technical knowledge of the tool than the book. Hopefully, after having translated the full book content, you can understand the terms used in the application. If you feel technically up to the task, the repo is [here](https://github.com/git-l10n/git-po) and you just have to follow the [guide](https://github.com/git-l10n/git-po/blob/master/po/README).
111+
112+
Beware though that
113+
114+
* you'll need to use more specific tools to manage localization po files (such as editing them with [poedit](https://poedit.net/) and merging them. You might need to compile git in order to check your work.
115+
* a basic knowledge of how translating applications works is required, which is significantly different from translating books.
116+
* the core Git project uses more stringent [procedures](https://github.com/git-l10n/git-po/blob/master/Documentation/SubmittingPatches) to accept contributions, be sure to abide by them.

0 commit comments

Comments
 (0)