如何在windows下安装GIT

Python015

如何在windows下安装GIT,第1张

本文在Windows7下测试成功。

安装和设置Git

下载Git for

Windows,采用默认安装,安装完成后就可以在本地使用Git了。

但要将内容放到Github上,必须先在Github网站上注册个账户,然后在本机使用Git创建SSH Key。操作如下:

在Git Bash上输入命令:

ssh-keygen -C "[email protected]" -t rsa

Note: “[email protected]”需要更换成你在Github上注册的Email地址或者是Username

这样会在用户目录(C:\Users\用户名)下产生一个.ssh文件夹,里面为对应的SSH

Keys,其中id_rsa.pub是Github需要的SSH公钥文件。

到c:\Users\用户名\.ssh\目录找到id_rsa.pub(可能位置不一定对,但是确认是以.pub结尾的文件),并用记事本打开复制全部内容。

Note:建议私钥公钥的名称最好写成"id_rsa",这样连接Github的时候会找这个文件,如果文件名已定,之后改名也行。

在github网站选择“Account Settings”>>“SSH Public Keys”>>“Add another

public key”,将刚才复制的内容粘贴到key文本框内。

这样就可以直接使用Git和GitHub了。

Note:建议在Git Bash中输入“ssh -v [email protected]”测试能够正常连接github

安装Ruby环境

下载RubyInstaller和DevKit。

因为Octopress需要的Ruby版本为1.9.2,所以选rubyinstaller-1.9.2-p290.exe,DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe。

先安装RubyInstaller,然后解压缩DevKit(路径中不能有中文)。

在“Start Command Prompt with Ruby”命令行中进入DevKit解压缩的目录,然后运行以下命令:

ruby dk.rb init

ruby dk.rb install

gem install rdiscount --platform=ruby

如果安装成功,就可以使用一些Ruby的工具了,也为后面搭建博客提供了基础环境。

安装Octopress

先通过Git从Github上克隆一份Octopress(在Git Bash上输入命令)

git clone git://github.com/imathis/octopress.git octopress

然后安装一些依赖的工具(后面都是在Start Command Prompt with Ruby中输入)

cd octopress

ruby --version # Should report Ruby 1.9.2

gem install bundler

bundle install

安装Octopress默认的Theme

rake install

配置Octopress

将octopress的文件夹下的_config.yml的编码改成UTF-8:

保存(或另存为)时选择编码格式为UTF-8

修改_config.yml,批改url、title、subtitle、author等等。

到Ruby的安装目次\lib\ruby\gems\1.9.1\gems\jekyll-0.11.2\lib\jekyll\找到convertible.rb这个文件,批改self.content

= File.read(File.join(base, name))为self.content = File.read(File.join(base,

name), :encoding =>"utf-8")。

写博文

最简单的方式:复制octopress\source\_posts下某个文件,例如2012-07-30-the-first-post.markdown,修改文件名和文件中的内容

或者,命令行中输入rake

new_post["title"],会创建一个新的Post,新文件在source/_post下,文件名如下面的格式:2012-07-31-title.markdown。该文件可以直接打开修改。

写文章时,可以使用Markdown和Octopress

Plugins等工具对内容进行格式排版。

预览效果

在修改设置或者写完文章后,想看看具体效果,可以通过如下命令来完成:

rake generate

rake preview

将博客部署到Github上

在预览的效果符合自己的预期后,就可以通过如下命令将内容部署到Github上了。

如果是第一次部署,需要在Github上创建一个username.github.com的repository

在github网站选择“Create a New Repo”,如图

填写对应的内容即可

note:Repository

name填写username.github.com,username一定要和github的username一致,建好的博客代表的是你这个github账户的主页即page

配置octopress与github的连接:

进入Octopress目录:

rake setup_github_pages

按照提示填入你的github项目网址,比如:

[email protected]:Username/yourname.github.com.git

note:可以按照上面的修改,也可以在github的项目页中找地址

分发到github上:

rake deploy

第一次运行时,会询问是否建立对github的授权,输入:yes。然后将站点更新的内容推送到github上。

补充一点:

最后的但并不是最重要的,我们需要将修改的日志同步到github上,因此下面的3个命令也是必须的。

git status

git add .

git commit -m 'your message'

git push origin source

大功告成!

第一步:安装rvm

为什么要安装rvm呢,因为rvm可以让你拥有多个版本的ruby,并且可以在多个版本之间自由切换。安装方式有两种:单用户模式和多用户模式。而

单用户和多用户的区别在于是否有root权限,单用户模式rvm会安装在~/.rvm目录下,而多用户模式则会安装在/usr/local/rvm目录

下。

单用户安装命令:

bash <<(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )

多用户安装命令:

sudo bash <<(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )

单用户需要设置环境变量,多用户安装重启就行了,确认rvm安装是否成功

在终端输入:

rvm -v

接着会看到rvm的版本信息如下:

rvm 1.19.6 () by Wayne E. Seguin [email protected]>, Michal Papis [email protected]>[https://rvm.io/]

第二步:安装ruby

查看是否安装gcc编译器

在开始安装ruby前请确认你是否安装了gcc,如果你安装了Xcode,请检查是否安装了command line tools,

打开Xcode,在Xcode ->Preference ->Download下,查看“Command Line

tools”这一项是否为“installed”

如下图:

如果不是installed,点击install安装或者下载OSX-GCC-Installer来安装gcc,不然在安装ruby编译的时候会报误(每个人的环境不一样报的错误也会不一样),如下图:

查看所有可以安装的Ruby版本

rvm list known

接着会看到各种版本的Ruby

安装Ruby

rvm install ruby --head

设置Ruby默认版本为1.9.3版本

rvm use 1.9.3 --default

第三步:更换源

查看已有的安装源

gem source

显示如下:

CURRENT SOURCES

http://rubygems.org/

修改更新源

gem update --system

gem uninstall rubygems-update

gem sources -r http://rubygems.org/

gem sources -a http://ruby.taobao.org

如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?

先上代码进行java时间转换成unix timestamp

[html] view plaincopy

import java.text.DateFormat

import java.text.ParseException

import java.text.SimpleDateFormat

import java.util.Date

/**

* @author kongqz [email protected]

* @version 创建时间:2013-2-19 上午10:21:47

*/

public class TestUnixTime {

public static void main(String[] args) throws ParseException{

DateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

//1361325960

long epoch = df.parse("2013-02-20 10:06:00").getTime()

System.out.println("should be 1361325960 :"+epoch)

Date d=new Date()

String t=df.format(d)

epoch=df.parse(t).getTime()/1000

System.out.println("t is :"+t+",unix stamp is "+epoch)

}

}

Javatime

JavaScriptMath.round(new Date().getTime()/1000)

getTime()返回数值的单位是毫秒

Microsoft .NET / C#epoch = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000

MySQLSELECT unix_timestamp(now())

Perltime

PHPtime()

PostgreSQLSELECT extract(epoch FROM now())

Python先 import time 然后 time.time()

Ruby获取Unix时间戳:Time.now 或 Time.new

显示Unix时间戳:Time.now.to_i

SQL ServerSELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE())

Unix / Linuxdate +%s

VBScript / ASPDateDiff("s", "01/01/1970 00:00:00", Now())

其他操作系统

(如果Perl被安装在系统中)命令行状态:perl -e "print time"

如何在不同编程语言中实现Unix时间戳(Unix timestamp) → 普通时间?

JavaString date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000)).getTime()

JavaScript先 var unixTimestamp = new Date(Unix timestamp * 1000)然后 commonTime = unixTimestamp.toLocaleString()

Linuxdate -d @Unix timestamp

MySQLfrom_unixtime(Unix timestamp)

Perl先 my $time = Unix timestamp 然后 my ($sec, $min, $hour, $day, $month, $year) = (localtime($time))[0,1,2,3,4,5,6]

PHPdate('r', Unix timestamp)

PostgreSQLSELECT TIMESTAMP WITH TIME ZONE 'epoch' + Unix timestamp) * INTERVAL '1 second'

Python先 import time 然后 time.gmtime(Unix timestamp)

RubyTime.at(Unix timestamp)

SQL ServerDATEADD(s, Unix timestamp, '1970-01-01 00:00:00')

VBScript / ASPDateAdd("s", Unix timestamp, "01/01/1970 00:00:00")

其他操作系统

(如果Perl被安装在系统中)命令行状态:perl -e "print scalar(localtime(Unix timestamp))"

如何在不同编程语言中实现普通时间 → Unix时间戳(Unix timestamp)?

Javalong epoch = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").parse("01/01/1970 01:00:00")

JavaScriptvar commonTime = new Date(Date.UTC(year, month - 1,day,hour,minute,second))

MySQLSELECT unix_timestamp(time)

时间格式: YYYY-MM-DD HH:MM:SS 或 YYMMDD 或 YYYYMMDD

Perl先 use Time::Local 然后 my $time = timelocal($sec, $min, $hour, $day, $month, $year)

PHPmktime(hour, minute, second, day,month,year)

PostgreSQLSELECT extract(epoch FROM date('YYYY-MM-DD HH:MM:SS'))

Python先 import time 然后 int(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S')))

RubyTime.local(year, month, day, hour,minute,second)

SQL ServerSELECT DATEDIFF(s, '1970-01-01 00:00:00', time)

Unix / Linuxdate +%s -d"Jan 1, 1970 00:00:01"

VBScript / ASPDateDiff("s", "01/01/1970 00:00:00", time)