问题描述:

在Linux系统上搭建了博客,现想在windows上写博客,如何在两个系统进行文章的同步?

上面是在同一台电脑的不同终端上操作,同样这个问题也适用于不同电脑上,所以这个问题可以扩展成一个比较通用的问题:

不同电脑,或终端上如何同步Hexo?

Google一下,网友已经给了很好的解决方案,大体上有以下两种方案:利用分支新建仓库

Git 简介

Git是目前世界上最先进的开源的分布式版本控制系统。
集中式的版本控制系统,如CVS、SVN等相比,Git有几大优点:
1、不像集中式版本控制系统一样,需要联网才能工作;
2、安全性较高,避免了单点失效的问题,不会因为某台电脑坏了,文件就丢失了;
3、具有强大的分支管理功能。

安装Git

Linux:sudo apt-get install git
centos: sudo yum install git-core
windows: git bash

安装完成后,需要配置机器的Git仓库,即:

git config --global user.name "Your Name"
git config --global user.email "email@example.com"
git

LaTex用于写文章的快捷与方便之处已是众人周知,然而LaTeX能做的事情还有很多,制作精美的PPT(特别是学术性的PPT),制作精美的简历,以及做出精美的图片(媲美Python的matplotlib和MATLAB),等等。LaTeX是一种脚本语言,类似于HTML,非常容易上手。利用LaTeX和JBref的组合来写文章,能够方便科研工作者快速实现自己的需求,而不必要为一些繁琐的排版问题而伤透脑筋。为了方便研究人员,很多会议、期刊、杂志都会提供自己相应的模板,投稿者只需下载模板,往里面增加自己的内容即可。

本文提供一些利用LaTeX来制作个人简历的模板,以便日后需要。几个比较好的模板:

中文模板:

英文模板:

LaTeX是一款高效的论文写作排版工具,除了写论文,它还有其他的一些用途,比如做ppt,写优美的简历,作优美的图画等等。相对于word+endnote的论文写作组合,LaTeX也和JabRef组成一个最佳的组合,但其好用程度比之前一个提升至少10个档次。本文总结几个我在使用的过程中遇到的盲点。

LaTeX对中文的支持

要使用中文模板,则LaTeX需要安装CJK库以支持汉字,该库里面已经包含了字体格式,大小等,怎么使用,请见下面一个简单的例子:

Github是Git旗下的分布式版本管理系统的库,主要用于代码的托管、展示和分享,方便程序员合作开发,所以,Github相当于一个远程的仓库或者是托管代码的云服务器,也可以把其看成是分享和展示代码的网站。
这个库早早就听说过,但是一直没有使用,现在随着写的代码越来越多,而且越来越大,代码的管理和维护成为了不得不面对的问题,但作为一个IT爱好者或是即将的IT从业者(我不想用程序员这个词,总感觉这个职业处在压迫之中),不应该把精力放在后期频繁而琐碎的代码维护上,而应该专注于前期的代码开发上。所以,Github这个工具非常合适。但是其入门并不是那么傻瓜式的,因为它依托于Git,需要借助于Git的各种命令来实现代码上传与托管,网上各种入门级的教程,眼花缭乱,与其看别人的,不如自己写一篇,也供以后自己的查阅,若是能够帮助到一两个网友,也不枉费我的辛苦。

提交代码的方式

通过看网友的教程,可以大致分为三种方式,因为代码的提交都是要通过本地客户端来完成,所以这三种方式都是依据不同的客户端来分的:
1、使用msysgit客户端,关于如何使用msysgit上传代码,请参见这篇博文:初识Github
2、直接使用Github的客户端,对应不同的OS,有不同的版本,如windows平台就有Github for Windows,其为windows用户提供了一个基本的图形前端去处理大部分常用版本控制任务,可以创建版本库,向本地版本库提交补丁,在本地和远程版本库之间同步。使用Github提交代码,参见这篇:从不会到会用Github
3、使用Git客户端,配有Git bash和Git GUI,本文采用这种方法。

上传自己的项目到Github

主要遵循以下两个原则:

将Github上新建的库clone到本地
修改或更新之后上传到Github

基于以上两个原则,按照以下几步进行操作:
1、在Github上建立项目
登录Github之后,找到并点击按钮“New Repository”,即可新建一个项目,记住项目地址,以便后面使用。(PS:项目地址在Code一栏处HTTPS的地方,复制即可)。如果说不是第一次上传代码或Git已经配置过,请跳转到第4步。
2、配置Git以及上传代码
初次使用Git需要对其进行配置,主要就是让Git记录你Github上的账号名邮件地址,输入如下两行即可:

git config --global user.name("your real name")  
git config --global user.email ("you@email.address")  

3、认证Github
这一步比较麻烦,需要利用Git生成一个SSH密钥,并提交该密钥到Github上。具体生成密钥和提交密钥的步骤请见在GitHub上分享和展示你的代码
4、上传代码到Github
秉承下载又上传的原则,刚开始新建的库需要先克隆到本地,然后在上传,所以,首先,通过Git Bash进入需要保存项目的地方,命令的操作和Linux相似。然后执行下面克隆命令操作:

git clone https://github.com/XXX/XXX.git  

上面的地址就是前面所记录的地址。如果说该库在本地已存在,就不用克隆,直接上传文件即可。下面就是上传操作:

a、git add .   

//该操作是上传当前目录下的全部文件,如果只上传单个文件,则如:git add test.md

b、git commit -am 'commit'   

//提交,让上条增加文件命令生效,同时显示代码文件的说明,即代码提交到Github上的提示说明,说明该代码是干嘛的。

c、git remote add origin https://github.com/XXX/XXX.git  

//向本地仓库中添加远程仓库地址,远程仓库地址别名为origin,如果出现下面的错误:
fatal: remote origin already exists
则执行如下语句:
git remote rm origin

d、git pull origin master  

//将origin所代表的远程仓库地址里的Master主干下载到本地仓库,即上传之前先进行一次同步

e、git push -u origin master 

//将本地仓库上传到origin所代表的远程仓库的master分支上
到此,就可以到Github页面上看,就会看到本地的代码文件已经同步到远程仓库中,这里,只要记住一点:
先把远程服务器Github上面的文件先pull下来,在push上去
关于Github的操作还有很多,在这里,我们只做简单代码上传和托管操作,我觉得只用记住这几条命令即可,后期在做进一步深入的时候,可以在继续学习。mark~~

最近看到一个工具,用于托管代码的仓库,Github,其相当于为本机客户端提供了一个远程管理代码的云端服务器,本机的代码可以克隆到云端,也可以从云端同步到客户端,对于程序员来说是一个非常强大的工具,这样程序员就可以不用担心代码的累积给自己造成的困扰,可以安心专注于算法,程序的设计上,而不用为其他的一些琐事儿烦恼,如后期的代码整理,查询和修改。Github是Git下面的一个子项目,Git是一款自由和开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,类似的系统,我们可能比较熟悉的是像微软的CVS、SVN等这些免费的版本控制系统,但是这些系统是集中式的,不但速度慢,而且必须联网才能使用。由于Git是基于Linux社区建立起来的一个系统,所以其拥有开源和分布式等的优点,现在已经成为业界最为流行的分布式版本控制系统。写这篇文章只是作为简单的了解,并列举网上几个入门级的资料,方便自己以后进行更为深入的学习。见下面:

廖雪峰的官方网站
从不会到会使用Github需要几步?
如何高效利用Github
史上最全github使用方法:github入门到精通

JabRef:一款和CTex配套使用的文献管理软件,就像Endnote和Word配套一样,在写Abstract或review时,其默认只能输入英文,输入中文则乱码,解决办法:
first set Options||Preferences||General>>Default Encoding as UTF8
then set Options||Preferences||Appearance>>Set table font as simsun (or any other Chinese fonts)

效果非常好。如果还有问题,可将Entry Preview里改为

Pycharm:一款方便调试,并集成了多个库的Python IDE,个人感觉非常好用,如C\C++的VS和Codeblock,java的eclipse,安装默认不支持中文编码,在注释的时候出现乱码,解决办法:
File-settings-file and code templates-python script中改成:
# -- coding: utf-8 --
然后File-settings-file encoding改成UTF-8编码

设置字体大小,行号
File->Settings->Editor->Colors & Font -> Font

File->Settings->Editor->Apperance -> 选上Show line numbers

总结:一般这种编码乱码问题,都是由于编码不支持造成的,找到相关地方进行修改就可以了,一般都会在Setting里面。关于中英文编码问题,详见这篇文章,写得非常nice。
字符编码