git及github简单使用
GIT简介
git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
百度百科 - GIT (分布式版本控制系统)
常见的版本控制系统还有SVN。
通过git,可以让项目具有版本控制,可以记录版本,回退到旧版本等,让项目的开发更加方便和安全(稳定),不用担心误删,丢失等问题。
git与github的关系
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。
简单来说,github和git的开发厂商不同,github使用git版本控制系统向用户提供在线(远程,区分本地)的代码托管服务。
github提供两种仓库,私有的和公有的。私有仓库字面意思,私有的,只有自己和配置协同的人能看到。公有仓库则根据自己指定的版权许可声明(license),任何人都可查看并按照版权许可规范来使用,修改,发布等,即开源。
2019年1月之后,原本github收费的私有仓库已经变为免费无限制使用。
git for windows 安装
windows下git安装很简单,在官网下载好之后,直接安装就可以。
git使用
基本概念
仓库(repository)
创建一个仓库指对一个目录,一个项目进行git版本控制。
分支(branch)
在开发时,一个仓库一般会有多个分支,master,dev,发布版分支,开发版分支等。
以发布(master)分支和开发(dev)分支为例,dev分支开发项目到一定阶段,已经可以发布公开的时候,将该dev分支的版本合并(merge)到master分支上,然后继续再在dev分支下完善项目,知道下一个可发布版本,再合并到发布分支上。
参考git分支模型
创建仓库
git init
首先,在项目根目录下,或者要进行版本控制的目录下,执行git init,会为当前目录开启git版本控制。
执行完命令之后,目录会有master的标识,表示git已经开启,当前分支为master。
查看状态
git status
该命令可以查看未跟踪文件和暂存区文件。红色为未跟踪(已修改但是未放到暂存区),绿色为已放到暂存区,等待提交。
预备提交
git add <file or dir>
将更改的文件或目录添加到暂存区,预备提交。
git reset
撤销放到暂存区的文件
此处,第一次提交,全部提交,用git add .
提交到分支
每次提交都会记录用户,所以先设置邮箱和用户名
git config --global user.name 'your name'
git config --global user.email 'your emailaddress'
然后提交
git commit -m <提交备注>
分支(branch)管理
查看分支
git branch -a
创建分支
git branch <new branch>
删除分支
git branch -d <branch name>
切换分支
git checkout <branchname>
合并分支到当前分支
git merge <branch name>
查看日志
git log
可以查看提交记录,包括提交者,时间,分支,备注。最新在最上面
版本管理
既然是版本管理工具,那当然最重要的是版本管理,版本管理包括上述的提交,还有回滚到之前的版本,从其他地方下载仓库等。
git pull
从另一个仓库更新到本地仓库
git clone url
在本地没有仓库的情况,下载一个仓库
回滚
修改上次提交
git commit --amend -m "备注"
对上次提交进行修改再提交
回滚到某一版本
git reset [--hard|soft|mixed|merge|keep] [commit|HEAD]
具体使用有点复杂,日后尝试再更新