使用TortoiseGit在Github上贡献翻译 - How to contribute translations on Github with TortoiseGit

in #utopian-io3 years ago (edited)

前言 Preface

Recently Utopian.io updated the rules of Translation category, a merged pull request on Github is a must. In this post I'll introduce a powerful tool TortoiseGit to help users feeling much easier with Github operations.

image.png

相信有不少朋友在Utopian.io获得了不错的收益,也体验到了开源社区的魅力。对于技术背景较弱的朋友,做设计与翻译就显得更容易些,然而最近Utopian再次修改了翻译类别的要求,必须提供在GitHub上已合并的Pull Request才行,就是说,以后翻译工作很难离开Github这个平台了。

Github被戏称为世界最大的同性交友社区,寓意为里面聚集的都是以男性为主的程序员。所以如果没有接触过Github的话,一下子会觉得难以入手。

本教程旨在通过图文并茂的方式,将在Github上做翻译工作的主要操作流程予以介绍。目标读者是入门者,大牛也请不要绕路,请多指正。

0:准备工作

在开始之前,我们需要一些准备工作。

  1. GitHub账号

    要想在Github上进行各种操作,需要先有一个账号。具体过程本篇不做阐述,请自行搜索网络。

  2. Git的基本概念

    建议花时间了解一下Github中的一些基本概念,否则下面的内容可能还是会看得一头雾水。推荐廖雪峰的简明教程

  3. Git软件

    Github的各种操作,都是基于git的。git最初被设计为一个命令行工具。但是,众多Windows用户更喜欢使用图形化操作界面,而且git在Windows下的操作不是太友好。
    于是请出这次教程中的主角:TortoiseGit。这也是个开源软件,安装后与资源管理器集成,通过右键菜单就可以实现各种操作。该软件有中文界面,但为了更贴近Github的原始动作,本文采用英文界面。

    下载地址:https://tortoisegit.org/download/

    在此之前,需要先安装Git for Windows:http://gitforwindows.org/

    具体的安装与使用教程,可以参考微软资料库文章

上面的准备工作都好了之后,就整理好心情开始翻译工作吧!

1:Fork项目

找到待翻译的项目后,先fork一份到自己的账号下。这排按钮在项目首页的右上方,很容易找到。
image.png

2:Clone项目到本地

经过第1步的fork后,会转到自己账户下面的项目页面。需要注意地址栏中是否是自己的账户名字。因为我们将要clone的是fork到自己账户下的代码。
找到克隆按钮然后点击copy to clipboard图标。
image.png

接下来就要用到TortoiseGit了。在要clone到的文件夹(建议单独建一个哈)点击右键,点击Git Clone...

image.png

在弹出的窗口中,将刚刚复制的链接填入'URL'栏中。目标文件夹应该已经自动填好了。其余选项可不必理会。

image.png

点击确定后,就会开始复制文件到本地,期间有过程显示,完成后整个项目就完成clone了。正常情况下本地会看到一个项目同名的文件夹。

这一步,通过命令行的执行方式为:
git clone https://github.com/this-is-you/first-contributions.git

3. 建立分支(Branch)
我们为翻译工作创建独立的分支,以免影响到主分支的代码。
点击进入刚刚clone后生成的项目文件夹。在空白处点击右键,选择TortoiseGit > Create Branch...

image.png

在弹出的窗口中,为新的分支起一个名字,比如可以用项目原名+translate+cn的模式。
选上下面的Switch to new branch切换到新建的分支。

image.png

这个步骤对应的命令行:

运行git branch OriginalProject-translate-cn创建新分支;

运行git checkout OriginalProject-translate-cn切换到新分支。

4:翻译过程

这部分没什么好说的。找到对应的多语言文件,使用工具翻译即可。

有的是普通的文本文件,可以用记事本编辑。这里推荐Notepad++之类的编辑软件,使用也比较方便,而且还可以加装Markdown等插件。

还有的可能是后缀为mo、po这样的文件,需要使用Poedit软件打开操作。
保存修改后,相应的文件和文件夹会被标记一个红色的叹号,说明有修改。

5:提交变化的内容

好,我们现在已经准备提交翻译成果了。

在提交之前,我们需要先执行一次commit,说明变更的内容。

在项目文件夹上点击右键,选择Git Commit ->。在弹出的窗口中填写Message栏,说明这次变更的内容。

image.png

点击下面的Commit按钮后,相应的信息就记录下来了,本次勾选的文件也会标记为绿色的对号。接下来我们可以直接在弹出窗口中点击Push...按钮,将本地的变更推送到Github自己的账户下。

image.png

该步骤对应的命令行:

使用git commit -m "update translations of Chinese"进行commit操作;

使用git push origin OriginalProject-translate-cn进行push操作。前面是本地的分支名,后面是远程仓库的分支名。

6:向原项目推送自己的翻译(Pull Request)
打开Github上自己的项目分支,注意检查当前的分支是否是新建的分支。正常情况下,在上方会有一个Compare & pull request按钮。

image.png

点击后会进入最后一步。填写此次pull request的相关内容就行了。不过要注意提交的目标项目分支,因为大多数情况下,项目所有者都会单独创建一个dev或者translate之类的分支,用于合并翻译及模块开发工作,确认无误后才会合并到主分支。

接下来,就是等原项目所有者的合并咯。

image.png

写在最后

除了上面写到的主要内容,还有一个本地仓库与项目仓库同步的操作,利用TortoiseGit也可以很方便的完成。就留给大家自己摸索吧。

这篇文章,可能会有些写得不对的地方,还请各位指正。如果对照教程遇到什么问题,可以互相交流,或者搜索相关建议。

目前最大的困扰,应该是如何找到可供翻译的开源项目。这方面大家有什么好的思路呢?



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

谢谢整理,非常实用

太棒的教程!!!

谢谢鼓励!

谢谢整理

这篇主要就是把自己摸索的过程和经验记录下来了,适合入门参考。

很详细的教程,谢谢这么用心整理。

希望对大家能有些许帮助!

谢谢哦,辛苦了,给你点赞

哈哈,谢谢亲!

学习了,想不到还要用到GitHub哈哈😄正在学习

Very useful contribution thank you ....

Your contribution cannot be approved because it does not follow the Utopian Rules.

We have update new rule

  • Contributions must be in English
    Contents of the contributions (post content) must be in plain English and fully understandable.
  • announcement HERE

You can contact us on Discord.
[utopian-moderator]

谢谢你!去实践一下有问题再请教你