[github] github入手教程
简单的介绍一下Github的基本操作。
主页:https://github.com/ 首先自然是在GitHub注册一个帐号了。然后开始正文吧。
Git基本介绍
Git是属于分布式版本控制系统(Distributed Version Control System,简称DVCS),客户端会把代码仓库完整的镜像到本地,与SVN等集中式版本控制系统(Centralized Version Control Systems,简称CVCS)相比,它没有“中央服务器”,每个客户端上都有一份完整的版本库,所以不需要联网即可工作,提高了安全性,而且支持强大的分支管理。
对于任何一个文件,在Git内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交标识该文件已经被安全地保存在本地数据库中;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。[来源]
Git管理项目时,文件流转的三个工作区域:Git的工作目录,暂存区域,以及本地仓库。如下图所示:
基本的Git工作流程如下:[来源]
- 在工作目录中修改某些文件。
- 对修改后的文件进行快照,然后保存到暂存区域。
- 提交更新,将保存在暂存区域的文件快照永久转储到Git目录中。
下面介绍在GitHub网页端的简单操作:
一 创建仓库(Create a Repo)
1、在任何页面的右上角选择"New repository"或者在GitHub Bootcamp(训练营)中选择"Create repositories"
2、填写仓库基本信息:
Repository name: 仓库名称
Description(可选): 仓库描述介绍
Public, Private: 仓库权限(公开共享,私有或指定合作者)
Initialize this repository with a README: 初始化文件README.md
gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore
license: 证书类型,对应生成文件LICENSE
3、创建后如下图所示:
如果创建时,选择了 Initialize this repository with a README ,则会自动生成一个README.md文件;如果选择了 Add .gitignore ,则会自动生成.gitignore文件;如果选择 Add a license ,则会自动生成一个LICENSE文件;
二 修改并提交(Commit changes)
1、这里以README.md文件为例,在上图中点击打开"README.md"文件
3、添加/修改其中的文本内容后,也可以在"Preview changes"中预览
在预览中会标记出修改或添加的内容
4、在页面底部,填写简短的提交信息或描述介绍修改/添加的内容,然后点击"Commit changes"提交即可。
5、在提交修改信息处所填的信息对应仓库目录浏览处的位置如下图所示:
另:在仓库里添加文件则点击仓库右侧的"+"即可,其他操作均同上面所讲;注意文件名里要带上后缀名。
三 拷贝仓库(Fork a Repo)
fork译为:分叉,在Github里,一个fork就相当于repository的一份拷贝,当然,这样你就可以在你自己帐号中的仓库里实验修改测试,而不会影响到原来的仓库内容的。
进入你要fork的仓库(repository)里,例如octocat/Spoon-Knife,然后点击右上角的Fork,就可以将该仓库拷贝到你的帐号中。
四 删除仓库(Delete a Repo)
1、进入相应的仓库,选择右侧工具栏中的"Setting"
2、然后选择Delete this repository
3、在弹出的对话框中填入要删除的当前仓库名称,确认即可
我一般不喜欢在网页端编辑操作什么的,毕竟说不定丫的什么时候就断网或者提交失败的,然后辛辛苦苦排版或编辑好的内容就飞了,所以我又重点学习了解了一下GitHub客户端的使用,下面就重点介绍一下GitHub客户端的使用。
下面介绍Windows客户端GitHub工具的基本使用
一 安装配置Github for Windows(Windows 7系统)
1、下载GitHub for Windows并安装(这个软件安装和卸载有点儿蛋疼,卸载时Git Shell会卸载不掉,不过不影响使用)
安装完成桌面出现的两个图标如上图所示,左侧为UI可视化管理工具,右侧为命令行管理工具;
2、连接GitHub帐号(可以通过GitHub或者Git Shell两种操作方式连接,嫌麻烦的直接方法一,闲蛋疼的直接方法二,楼主明显占其二了)
- 方法一:打开GitHub,在右上角的"Options"中添加新账户"Add account",然后填写用户名(或邮箱)和密码登录即可
然后在左上角点开“+”里面即可看到GitHub帐号里的项目
- 方法二:打开Git Shell,首先该工具与GitHub中的"Options"中右侧的Defaul shell选择有关,
以及最后的自定义启动。这里采用Git Bash方式。(楼主,那他们的区别你咋不说啊?它们有嘛区别呀?楼主说了,嘛区别呢,嘛区别呀,谁知道有嘛区别呢……请自力更生吧)
再通过命令行来设置Git的信息,用户名和邮箱:
git config --global user.name "YOUR NAME" git config --global user.email "YOUR EMAIL ADDRESS"
这两行命令的执行效果与GitHub的"option"里的Configure git处设置相对应;
Git连接GitHub是通过ssh,所以需要通过命令行创建一个新的ssh key:
ssh-keygen -t rsa -C "YOUR EMAIL ADDRESS"
执行该命令时,会提示文件保存路径,默认为系统用户文件夹下的.ssh文件夹里
[来源]
这里采用默认路径,直接回车;然后会提示输入密码,需要输入两次(也可以不输入直接回车两次);
[来源]
然后就会生成类似如下内容的信息
[来源]
执行到这里,你就会在指定的目录.ssh文件夹里发现生成了两个文件,id_rsa和id_rsa.pub
接着,你可以通过文本编辑的方式复制id_rsa.pub中的public key,或者通过下面的命令方式复制
clip < ~/.ssh/id_rsa.pu
这个public key是要粘贴到GitHub设置的SSH Keys里面的,按如下操作:
在GitHub任何网页页面的右上角处, 点击"Setting"图标,然后在"Personal settings"栏中选择"SSH keys"选项卡,并点击其右上角的"Add SSH key",
填写一个Title作为标识,然后把之前复制的public key粘贴到Key下面的文本框中,点击"Add key",即可。
最后需要验证一下添加的SSH key是否连接成功,可以执行如下的命令验证,或者打开GitHub客户端也可以:
ssh -T git@hostname
如果看到警告消息,类似:
[来源]
别管他,yes回车就可以看到类似如下的消息提示:
[来源]
ok,到这里,通过Git Bash方式连接GitHub就成功了。很显然,通过Git Bash配置过程有点儿多,还是第一种方法实在简单,都体验一下吧。
二 同步/克隆仓库到本地(Sync/Clone repository)
在你的每个仓库页面的右下角处,都有一块如下图所示的区域:
注意,clone后面的参数就是之前在网页端copy的HTTPS clone URL,要在Git Bash中粘贴,则需要按如下图所示操作:
运行命令即可得到如下提示:
通过命令行Clone下来的仓库(repository)会存放在对应用户文件夹(C:\Users\用户名\)根目录下。
当然也可以通过GitHub客户端软件更快捷的Clone仓库,Clone的路径它会提示让你选择,
如果网页端有关于该仓库的更改,还未同步到本地,则在右上角的"Sync"处会有如下提示:
点击"Sync"即可将修改内容同步到本地:
如果本地修改了仓库里文件,而且还未同步到服务器,则在"History"的上面会出现"Uncommitted changes",展开后右侧也会显示修改的相关内容:
同网页端操作一样,这时候你需要填写一下修改的Summary和Description,然后提交(Commit to master),这时候在右上角的"Sync"处会有如下提示:
点击即可同步到服务器端了!