1 If you are commit to the i18n-zh project repository, please read this first.
3 ============================================
4 Guide to i18n-zh project repository
5 ============================================
8 * Software version requirements
10 * Repository on repo.or.cz
11 * Repository maintenance
12 * Common git operation
13 * Getting the latest upstream code
16 * File permission & encoding
17 * Verifying your po file
18 * Formating your po file
33 Software version requirements
34 =============================
37 *) translate-toolkit(pomerge & pofilter) 1.0.1
42 The flowwing is the sample configuration, please modify some fields.
51 repositoryformatversion = 0
64 repackflags = -a -d -l
67 # email = dongsheng.song@gmail.com
68 # name = Dongsheng Song
72 # HostName 152.69.94.80
77 Repository on repo.or.cz
78 ========================
81 http://repo.or.cz/w/i18n-zh.git
85 # cat .git/branches/origin
87 git://repo.or.cz/i18n-zh.git
88 http://repo.or.cz/r/i18n-zh.git
92 git+ssh://repo.or.cz/srv/git/i18n-zh.git
95 Repository maintenance
99 git-repack -a -d -f --window=128 --depth=64
103 git-fsck --unreachable --strict HEAD $(cat .git/refs/heads/*)
110 git-clone git://repo.or.cz/i18n-zh.git
114 "git-pull -v" or "git fetch", See section "Getting the latest upstream code".
117 git-checkout -f filename
121 git-commit -a -m "your log messages"
123 if you commit patch by someone, use option "--author":
125 git-commit -a --author someone -m "your log messages"
129 git reset --soft HEAD^
133 git-push git+ssh://repo.or.cz/srv/git/i18n-zh.git master:master
136 Getting the latest upstream code
137 ================================
138 There are two ways to update your local repository. Which one to use depends on
139 whether you have committed changes in the meantime.
143 The command to update your local repository is:
147 It will pull down the latest repository information from the origin remote
148 file (which points at where you initially cloned the repository from), then
149 merge. If the new changes don't conflict with anything locally, the merge
150 will "fast-forward" your branch reference to the new head. If new changes
151 do conflict, it will try to do an automatic merge using a couple of
152 different schemes, and then automatically commits the merge if it's
153 satisfied. If you notice that your pull resulted in a merge (in the output
154 of pull), you might want to use gitk to see if the merge did what you
155 expected it to. If it isn't satisfied, then you have to resolve the
158 *) You've made changes: fetch and rebase
160 If you have committed local changes, then git-pull will create a spurious
161 "Merge" commit, which will pollute the change list when you later push
162 upstream. To avoid this, do these two commands:
167 Instead of merging, this attempts to insert the changes you pull from the
168 origin repository before your local changes, avoiding the merge message.
173 *) Clone a repo (like git clone)
175 git-svn clone -T trunk -b branches -t tags https://i18n-zh.googlecode.com/svn/trunk
177 *) Reset your master to trunk (or any other branch)
179 git reset --hard remotes/trunk
181 *) Do some work and commit locally to git
185 *) Something is committed to SVN, rebase your local changes against the latest
190 *) Now commit your changes (that were committed previously using git) to SVN,
191 as well as automatically updating your working HEAD:
199 diff -wBNr -x .git . i18n-zh.origin
202 patch -p0 < zh_CN.patch
205 File permission & encoding
206 ==========================
209 set umask to 002, i.e.
211 set directory to 0775
212 set common file to 0664
213 set execute file to 0775
216 using utf-8 without signature(no BOM)
219 Verifying your po file
220 ======================
221 Please verify your po file is valid:
223 msgfmt --check-accelerators --statistics -c -o zh_CN.mo zh_CN.po
226 Formating your po file
227 ======================
228 Please format your translation before send po to the mailing list,
229 or commit to the repository.
231 msgmerge --no-wrap -F -o zh_CN-new.po zh_CN.po example.pot
232 mv -f zh_CN-new.po zh_CN.po
234 This can minimize the diff output, review your translation is easy.