git及github配置入门
github是一个有海量开源代码库的网站,同时也是一个软件开发管理软件,作为软件来说它集成了git这个分布式的版本控制系统,可以上传、下载和管理自己的代码。
笔者刚接触不久,把认为入门应该知道的东西稍微总结一下。以后可能还会有补充。本文写于2015年6月4日,github可能有时效性。
使用git需要有一定的命令行基础
1.github注册
注册很简单,有邮箱就能注册,要上传项目文件需要登录后点击右上角的加号创建一个Repository。Repository个数应该是不限的。
2.Repository
Repository分为public和private两种,其他人可以通过网页访问你的空间下载public的代码。public是免费的,private收费。单个Repository最大容量为1G,应该没有文件数量限制,单个文件的大小不能超过100M。
3.git help
git都在命令终端界面下操作,如果有不记得的命令可以使用help指令获取帮助
git help
4.本地操作
创建完Repository后,可以下载github工具git。
windows系统,会提供一个图形界面的登录框,输入邮箱和密码登录。
可以在本地打开git shell工具,使用cd命令定位到需要上传代码的目录,然后使用git init对当前目录初始化git
git init
然后使用git add [要添加的文件列表]添加文件,使用git add .代表添加当前目录所有文件
git add .
下面关联git地址,这里建议使用ssh地址,笔者初学使用https地址总是报错。将下面代码的username和repositoryname改为自己的名称
git remote add origin git@github.com:username/repositoryname.git
如果地址不小心写错了,使用set-url命令修改
git remote set-url origin git@github.com:username/repositoryname.git
每次提交要先使用commit命令,commit后面可以跟上本次提交的说明
git commit -m "commit test"
最后使用push命令提交
git push -u origin master
如果其他地方修改了代码可以使用pull命令下载
git pull -u origin master
其中 -u origin master中指用户,origin master为初始用户。
5.ssh操作
(该步骤大多摘自GitHub官网,可能有时效性)
如果在一个新目录下想要pull或者clone github的代码的话,需要设置ssh key
首先cd到需要下载代码的目录然后初始化
git init
使用ssh-keygen工具创建key,最后引号中需要填写你的账户邮箱
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
等一会直到出现下列提示,需要输入存储key的路径,直接回车可以存储在默认路径里(建议存储在默认路径)
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
如果key已存在的话会提示是否覆盖,否则会出现以下两个提示,出现这些提示直接回车就好。
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
Enter passphrase (empty for no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again]
下面会提示创建完成,会在/Users/you/.ssh目录下生成两个文件id_rsa和id_rsa.pub.
然后将key加入ssh-agent.加入前可以先用命令确认ssh-agent是否可用。
ssh-agent -s
或者使用下面的命令
eval $(ssh-agent -s)
如果可用的话会输出agent pid,例如:
Agent pid 59566
确认没问题后,利用ssh-add命令添加
ssh-add ~/.ssh/id_rsa
如果添加后出现错误:Could not open a connection to your authentication agent.则先执行以下语句再执行一遍add语句
ssh-agent bash
添加完成后需要将ssh-key添加到github网站账户中去,网页上登录后,点击最右上的按钮,然后点击setting(以后位置可能会有变化,反正记得找setting),然后在左侧列表中点击ssh keys,点击右边 add ssh-key
其中title随便写,key需要上面生成id_rsa.pub的所有内容(不要改任何格式)。
官方建议使用如下命令复制:
clip < ~/.ssh/id_rsa.pub
不过我在windows下报错了,不支持'<' 符号,我用的是记事本打开的方法,记事本后面的路径需要是windows的路径方式
notepad C:\Users\you\.ssh\id_rsa.pub
打开后Ctrl+A复制所有。粘贴完成后点击 add key,网站上的配置就算完成了。
可以本地使用测试命令测试连接
ssh -T git@github.com
可能会有yes/no的输入提示,记得输入yes。以下提示为成功
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
完成这些步骤后本地就可以使用clone和pull下载代码了(pull前记得 add origin)。
其他系统不同之处以后补充