github(https://github.com)是一个基于git的代码托管平台,付费用户能够建私人仓库,咱们通常的免费用户只能使用公共仓库, 也就是代码要公开。对于通常人来讲公共仓库就已经足够了,并且咱们也没多少代码来管理,O(∩_∩)O~。下面是我总结的一些简单使用方法,供初学者参 考。 git
要想使用github第一步固然是注册github帐号了。以后就能够建立仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,以后会出现一些仓库的配置信息,这也是一个git的简单教程。 github
github是服务端,要想在本身电脑上使用git咱们还须要一个git客户端,我这里选用msysgit,这个只是提供了git的核心功能,并且是基于命令行的。若是想要图形界面的话只要在msysgit的基础上安装TortoiseGit便可。 shell
装完msysgit后右键鼠标会多出一些选项来,在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git建立成功。右键Git Bash进入git命令行,为了把本地的仓库传到github,还须要配置ssh key。 c#
首先在本地建立ssh key; bash
1
|
$ssh-keygen -t rsa -C"your_email@youremail.com"
|
后面的your_email@youremail.com改成你的邮箱,以后会要求确认路径和输入密码,咱们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。 服务器
回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴key。为了验证是否成功,在git bash下输入: ssh
1
|
$ssh-T git@github.com
|
若是是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。 ide
接下来咱们要作的就是把本地仓库传到github上去,在此以前还须要设置username和email,由于github每次commit都会记录他们。 spa
1
2
|
$ git config --global user.name"your name"
$ git config --global user.email"your_email@youremail.com"
|
进入要上传的仓库,右键git bash,添加远程地址: 命令行
1
|
$ git remote add origin git@github.com:yourName/yourRepo.git
|
后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完以后进入.git,打开config,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也能够直接修改config来配置远程地址。
接下来在本地仓库里添加一些文件,好比README,
1
2
|
$ git add README
$ git commit -m"first commit"
|
上传到github:
1
|
$ git push origin master
|
git push命令会将本地仓库推送到远程服务器。
git pull命令则相反。
修改完代码后,使用git status能够查看文件的差异,使用git add 添加要commit的文件,也能够用git add -i来智能添加文件。以后git commit提交本次修改,git push上传到github。
.gitignore顾名思义就是告诉git须要忽略的文件,这是一个很重要而且很实用的文件。通常咱们写完代码后会执行编译、调试等操做,这期间会产生不少中间文件和可执行文件,这些都不是代码文件,是不须要git来管理的。咱们在git status的时候会看到不少这样的文件,若是用git add -A来添加的话会把他们都加进去,而手动一个个添加的话也太麻烦了。这时咱们就须要.gitignore了。好比通常c#的项目个人.gitignore是这样写的:
1
2
3
|
bin
*.suo
obj
|
bin和obj是编译目录,里面都不是源代码,忽略;suo文件是vs2010的配置文件,不须要。这样你在git status的时候就只会看到源代码文件了,就能够放心的git add -A了。
咱们能够建立一个tag来指向软件开发中的一个关键时期,好比版本号更新的时候能够建一个“v2.0”、“v3.1”之类的标签,这样在之后回顾的时候会比较方便。tag的使用很简单,主要操做有:查看tag、建立tag、验证tag以及共享tag。
列出全部tag:
1
|
git tag
|
这样列出的tag是按字母排序的,和建立时间不要紧。若是只是想查看某些tag的话,能够加限定:
1
|
git tag -l v1.*
|
这样就只会列出1.几的版本。
建立轻量级tag:
1
|
git tag v1.0
|
这样建立的tag没有附带其余信息,与之相应的是带信息的tag:
1
|
git tag -a v1.0 -m'first version'
|
-m后面带的就是注释信息,这样在往后查看的时候会颇有用,这种是普通tag,还有一种有签名的tag:
1
|
git tag -s v1.0 -m'first version'
|
前提是你有GPG私钥,把上面的a换成s就好了。除了能够为当前的进度添加tag,咱们还能够为之前的commit添加tag:
1
2
3
4
5
|
#首先查看之前的commit
git log --oneline
#假若有这样一个commit:8a5cbc2 updated readme
#这样为他添加tag
git tag -a v1.1 8a5cbc2
|
很简单,知道tag名称后:
1
|
git tag -d v1.0
|
若是你有GPG私钥的话就能够验证tag:
1
|
git tag -vv1.0
|
咱们在执行git push的时候,tag是不会上传到服务器的,好比如今的github,建立tag后git push,在github网页上是看不到tag的,为了共享这些tag,你必须这样:
1
|
git push origin --tags
|