关键字:git、GitHub、gitee、clone、远程仓库
作业题目: 了解源代码管理工具
要求:
通过搜索资料和自学,在个人博客上介绍源代码管理工具——一Github。具体要求:(a)请使用图文并茂的形式;
(b)请加入自己的学习心得体会。
由于之前写过这篇博客,所以现在对其整理一下作为本次的作业。
标题:如何使用git、GitHub、gitee?
目录
前言
一.git的使用
1.注册GitHub账号
2.下载、安装并简单使用git
二.使用GitHub做远程仓库
三.gitee的使用
四.学习心得与总结
前言:为什么要使用git?
一.git的使用
1.注册GitHub账号
打开https://github.com/注册GitHub账号,记住用户名和密码
2.下载、安装并简单使用git
(1)下载git。下载地址https://git-scm.com/download/win。根据自己电脑选择64位还是32位,一般都是64位的。
(2)安装git。运行下载的exe文件进行安装,一直点击下一步就可以了。
(3)使用git。安装好git后,打开git Bash
(4)首先需要对配置git这个分布式版本控制系统。如图,分别输入以下代码 git config --global user.name "jiangfenli" , git config --global user.email "1504209248@qq.com" 。(注意这里的"jiangfenli "改成自己在GitHub注册的用户名,"1504209248@qq.com"改成在GitHub注册时的邮箱)
(5)怎么使用git对项目进行管理呢?举个栗子。在我 D:/test 目录下有个ikun.docx文件,内容如下
老板觉得我的这个版本内容写得不好,需要更改,通常情况我们会直接在这个文档里面进行修改,但是为了以防老板对新版本不满意,需要最初的版本,我们就不能在原版本进行更改。这时候git就起作用了。
第一步:直接在控制台输入 cd D:/test ,切换到test目录下后输入git init ,然后你去打开这个test目录,你会发现多了个.git 文件(这是个隐藏文件,有的电脑是看不见的,是因为电脑设置了隐藏文件不可见。需要去设置一下才可以看见隐藏文件。具体设置可以问某度。)
这个文件主要记录你在这个文件夹下修改文件的日志
在控制台输入 git status
可以看到我们的ikun.docx文件是红色的,说明文件进行了修改但是没有提交修改日志到.git (本地仓库)文件中。我们再输入git add ikun.docx 回车,接着git status ,发现ikun.docx变成绿色。
接着输入 git commit -m"the first version"回车,接着git status,提示说没有文件需要提交,工作区很干净。
现在来解释一下刚才的操作。实现分布式版本控制系统过程是这样的:工作区——>暂存区——>本地仓库。(只有被提交到本地仓库的文件才能查看项目每个版本的信息)
git status是用来查看当前工作状态,假如有文件为红色,说明文件修改了,此时在工作区。git add ikun.docx 之后文件在暂存区,git commit -m"the first version"之后文件在本地仓库并备注此版本是第一版本。
假如老板说第一版本不好,需要修改,那怎么办呢?
直接打开ikun.docx 修改内容并保存
此时在控制台输入git add ikun.docx并回车,输入git commit -m"the second version"并回车
第二版本就好了。令人窒息的是,老板跟你说:“我还是喜欢第一版本”。(抓狂.png)
此时,别慌,我们不用对ikun.docx进行修改,只需要回退到第一版本就好了。
控制台输入git log --pretty=oneline,查看最近提交的历史
输入git reset --hard HEAD^就可以回退到上一个版本(也可以输入”git reset --hard 版本号“,回退到指定版本,这个版本号就是刚才查的版本前面的哈希数,不一定要输入全部哈希数,输入一部分即可)
好了,现在已经回退到第一个版本了,点开我们的ikun.docx,发现内容就是第一个版本的内容
既然使用 git reset --hard 版本号 可以回到任意版本,想一下,假如老板又叫你改回新版本。但是此时你使用git log --pretty=oneline 发现新版本的版本号没了,心里慌得一批
别慌,输入git reflog查看修改历史
又可以使用 git reset –-hard 版本号 回到新版本了。我们点开ikun.docx发现又回到了新版本
下面介绍一下git 的一些基本命令(收藏!!!):
1.git --version 查看git的版本信息
2.git config --global user.name 获取当前登录的用户
3.git config --global user.email 获取当前登录用户的邮箱
4.mkdir project 创建文件夹project
5.ls -al 查看当前文件夹下所有目录
6.cd .. 回退到上一个目录
7.rm -r src 删除src目录
8.mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下.
9.reset 清屏,把git bash命令窗口中的所有内容清空
10.exit 可以直接退出窗口
命令的快捷操作(收藏!!!):
1. 我们可以使用上下箭头来查找我们以前输入的命令。
2.左右箭头移动光标修改命令,但是只能一个一个移动光标。Ctrl + A 则是移动光标到整条命令的起始位置,Alt + B 向左移动一个单词,Alt + F 向右移动一个单词,Ctrl + E 则是移动光标到整条命令的结束位置。
3.touch ikun.docx 就会在当前目录下新建一个ikun.docx文件。
二.使用GitHub做远程仓库
字面意思,远程的一个仓库,可以存放自己的代码、文件。同时,在GitHub,用户可以十分轻易地找到海量的开源代码。GitHub可以托管各种git库,并提供一个web界面,但它与外国的SourceForge、Google Code或中国的coding的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。那么我们怎么去使用GitHub呢?
首先打开之前安装的git Bash,输入ssh-keygen -t rsa -C 1504209248@qq.com 一路回车
(把这个邮箱换成自己在GitHub的邮箱)
由于我之前已经存在了,所以在此不演示了。
然后去user(或者用户)文件夹下找一个.ssh文件(搜索的话会快一点找到),用记事本打开并复制里面的内容。
之后打开https://github.com/网站,登录进去。
点右上角
点设置
点ssh和GPG密钥
由于我之前已经添加过了,所以不演示了,自己添加进去就可以了,标题可以任意,key粘贴进去。
点加号,第一个,添加新的存储库(远程仓库)
远程仓库有了,现在需要把本地仓库与远程仓库关联,这样才方便同步自己电脑的文件到GitHub。
在git控制台输入
git remote add origin https://github.com/jiangfenli/git.git
注意把后面的链接替换成自己的GitHub远程仓库目录下创建的仓库,我的仓库名字是git
添加后,origin就是你的远程仓库名字。接着输入git push -u origin master 回车,远程仓库就和本地仓库同步了。
以后只要执行命令 git push origin master,就会把master分支的最新修改同步到GitHub。
三.gitee的使用
gitee是中国版的GitHub,相比于github而言,gitee有两个显著的优势:一是速度快,二是支持免费的私密项目。看下面这张图就知道了。
下面来看一下怎么使用?其实gitee和GitHub大同小异。
第一步,先注册https://gitee.com,记住自己的密码和邮箱
接着,新建仓库,创建
点击右上角管理再点击左边的公钥管理
然后出现这个页面
你可以添加公钥
也可以添加个人公钥。两者之间的差别就是个人公钥同时拥有推送和拉取的权限,而仓库公钥只有拉取的权限。
添加仓库公钥的方法上一张图片里面有,这里就不讲了。个人公钥就是之前C盘文件下生成的.ssh 文件里面的内容,把它拷贝到个人公钥那里然后添加就可以了。
下面开始屁颠屁颠的去clone远程仓库的东西了。
控制台输入git clone git@gitee.com:jiangfenli/project.git (黄色的内容需要替换成自己)
克隆完成,查看自己 D:/gitee 目录下有没有远程仓库project
注意,克隆的时候可能会弹出窗口说需要你输入码云的账号密码,那你输入就可以了。
我们试着克隆别人的开源项目耍耍吧。
网上找了一个java博客系统,地址https://gitee.com/biezhi/tale
我们先建立个分支dev,然后切换到这个分支下工作,接着开始clone网友的开源项目
查看本地 D:/gitee 目录,好了,成功克隆下来了。
然后就可以对克隆下来的项目“为所欲为”了。
四.学习心得与总结
1.学习心得
在网上搜索了好多资料,包括网友写的博客,分享的经验,才真正了解了git、GitHub、gitee的使用。按照网上教程操作的时候遇到了挺多问题,比如远程仓库连接不上等(问题详细在后一篇博客写有);后来也通过上网搜索资料解决了这些问题。虽然耗时,但是感觉学到了很多。没接触过GitHub、gitee、git之前,习惯性把代码存到自己电脑本地硬盘中,现在使用之后感觉远程仓库特别好。代码可以随时随地进行编辑,只要有一台电脑和网络,而且项目每一次更改都可以记录保存先前的版本,如果在本地电脑是不太容易实现不了这一点的。
2.总结
首先,git是个很好用的软件,对于我们程序猿来说,需要经常写代码改代码,多用GitHub或者gitee比较好,一个是可以帮助我们很好的分类自己项目,另一个是方便记录自己是如何一步步走向“不归路”。至于GitHub和gitee使用哪一个?因人而异,GitHub在国外,在使用的时候可能网速会相对慢一点,而gitee在国内,如果对网速有要求的话可以使用国内的gitee,当然,你有“梯子”也是可以的。GitHub拥有全球最大的代码库,如果你需要经常fork一些好的优秀的代码或者项目,GitHub是个不错的选择。总之各有各的优势。还有一点,建议尽量在命令行下工作,少在图形界面下工作。点击图标谁不会?多敲代码有助于增加对软件运行原理的熟悉度,最重要的一点,酷!!!!