目录:
- 1、github这个什么意思?
- 2、怎样使用 GitHub
- 3、新手如何使用Github?
- 4、GitHub入门与实践
- 5、github] github是什么?
- 6、github是干嘛的?
github这个什么意思?
你没有必要纠结整体的意思,但是你有必要知道这段历史。
github这个词应该分开。
git:早年Torvalds
为linux
源代码做的分布式版本控制系统。
hub:中心的意思。
github:GitHub以托管各种git库,并提供一个web网站。创立于2012年
怎样使用 GitHub
github()是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。对于一般人来说公共仓库就已经足够了,而且我们也没多少代码来管理,O(∩_∩)O~。下面是我总结的一些简单使用方法,供初学者参考。
1.注册账户以及创建仓库
要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。
2.安装客户端msysgit
github是服务端,要想在自己电脑上使用git我们还需要一个git客户端,我这里选用msysgit,这个只是提供了git的核心功能,而且是基于命令行的。如果想要图形界面的话只要在msysgit的基础上安装TortoiseGit即可。
装完msysgit后右键鼠标会多出一些选项来,在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git创建成功。右键Git Bash进入git命令行,为了把本地的仓库传到github,还需要配置ssh key。
3.配置Git
首先在本地创建ssh key;
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下输入:
1
$
ssh
-T git@github.com
如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。
接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
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来配置远程地址。
4.提交、上传
接下来在本地仓库里添加一些文件,比如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。
5.gitignore文件
.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了。
6.tag
我们可以创建一个tag来指向软件开发中的一个关键时期,比如版本号更新的时候可以建一个“v2.0”、“v3.1”之类的标签,这样在以后回顾的时候会比较方便。tag的使用很简单,主要操作有:查看tag、创建tag、验证tag以及共享tag。
6.1查看tag
列出所有tag:
1
git tag
这样列出的tag是按字母排序的,和创建时间没关系。如果只是想查看某些tag的话,可以加限定:
1
git tag -l v1.*
这样就只会列出1.几的版本。
6.2创建tag
创建轻量级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
6.3删除tag
很简单,知道tag名称后:
1
git tag -d v1.0
6.4验证tag
如果你有GPG私钥的话就可以验证tag:
1
git tag -v
v1.0
6.5共享tag
我们在执行git push的时候,tag是不会上传到服务器的,比如现在的github,创建tag后git push,在github网页上是看不到tag的,为了共享这些tag,你必须这样:
1
git push origin --tags
新手如何使用Github?
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
简单来说,Git可以让你快速高效的对版本进行控制(修改)等功能。而GitHub正是使用了这个功能实现了更好的共同完成项目的功能。
当你下定决心想要使用GitHub的时候,关于git的知识是一定要理解的。
首先需要安装git
官网中对于git的安装描述得很清楚,无论你是什么操作系统。
GitHub入门与实践
本文是对《 GitHub入门与实践 》一本书的总结和归纳,方便日后查看 Git 各种命令的使用
让输出命令具有更好的可读性:
GitHub上连接已有仓库是通过SSH Key来进行的,创建SSH Key:
两个重要的文件:
在GitHub中添加公开密钥,就可以用私有密钥来访问的
完成设置之后,用手中的私有密钥与GitHub进行通信:
下面是实际操作部分:
新建一个git上的 ,见下图,不要勾选初始化的 read.me 文件
上面的私有和公开写反了。。。哈哈哈哈哈
在本地新建一个和远程仓库同名字的本地仓库,进行初始化
向缓存区添加文件。上面的栗子中有使用 git add 命令。缓存区是提交前的一个临时区域。
提交指的是激励工作树中所有文件的当前状态。通过参数 m 可以加上本次的提交信息。还可以修改提交信息。
将上面的两个动作同时进行的语句
在后面直接跟上文件名称即可
如果想看到提交带来的改动,加上参数 -p 。
查看当前仓库执行过的操作日志
只要不进行Git的GC(Garbage Collection,垃圾回收),就可以通过日志随意调取近期的历史状态。
前面表示的是哈希值。哈希值只要输入4位以上就可以执行的
git diff 查看更改前后的差别
master分支是git的主分支,其他分支都是以这个分支为中心进行的。
当前只有master分支,星号表示当前所处的分支
上面👆的语句等同于:
用图表的形式输出提交日志,非常直观
Git的另一个特征是可以灵活地操作历史版本。
要让仓库的 HEAD、暂存区、当前工作树 回溯到指定状态,需要使用 git reset --hard 命令。
需要目标时间点的哈希值 。什么是哈希值???
使用场景:如果发现已经提交的内容中有错误(拼音、内容等小错误),可以提交一个修改, 将这个修改包含到前一个提交之中,压缩成一个历史记录
Git是分散性版本管理系统。为了防止和其他仓库混淆,远程的仓库名尽量保持和本地仓库相同
现在假设有个test的本地仓库,现在创建了一个同名的远程仓库,将通过如下的语句将该其设置成本地仓库的远程仓库
将当前分支下本地仓库中的内容推送到远程仓库中,使用如下语句:
-u参数是指在推送的同时,将origin仓库的master分支设置成本地仓库当前分支的上游。好处:将来能够直接从远程仓库拉取:
如果不是推送到master分支,比如是feature-D
默认处在maste分支下面
假设远程有个分支feature-A,我们想获取该分支下的内容:
假设本地中有个分支feature-A,想把它更新到最新远程仓库的状态
github] github是什么?
源代码管理软件,开源的,很有名气。不过上面的代码所有人都可以看到。属于开源源代码管理系统。
github是干嘛的?
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。
GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目Ruby on Rails、jQuery、python等。
发展历程:
2018年6月4日晚,微软宣布,通过75亿美元的股票交易收购GitHub。10月26日,微软以75亿美元收购GitHub交易已完成。10月29日,微软开发者服务副总裁奈特·弗里德曼(Nat Friedman)将成为GitHub的新一任CEO。
2020年3月17日,Github宣布收购npm,GitHub现在已经保证npm将永远免费使用。
评论前必须登录!
注册