Github简介
关于Github、GitLab、SVN的区别,参考下面文章:
https://www.cnblogs.com/leeyongbard/p/9777498.html
安装
linux: yum install -y git
windows: https://git-scm.com/downloads
Mac: brew install git
安装后查看版本号:
git --version
注册账号
打开github
github网址:https://github.com/
直接打开可能无法访问,需要配置host文件。
C:\Windows\System32\drivers\etc\hosts
配置方法,可参考下面文章:
https://bbs.21ic.com/icview-3077274-1-1.html?_dsign=f9598e63
https://zhuanlan.zhihu.com/p/158938544
SSH-KEY的客户端配置
配置后,操作github的时候(与github网站交互),不用再输入账号密码。是通过公钥密钥这种加密方式来进行交互的。
配置方法
1. 检查电脑上是否有SSH KEY
~/.ssh
或者
~/.ssh ls
如下图表示电脑上没有。

2. 生成Key
ssh-keygen -t rsa -C "邮箱地址"
下面图中三步直接回车即可。
Enter passphrase (empty for no passphrase): 就是让你输入密码,如果设置了密码,那在使用ssh传输文件的时候,就要输入这个密码。

可以使用~/.ssh再看一下,文件已经存在了。

3. 切换到用户目录下的.ssh文件夹
可以用ll或ls查看都有哪些文件。

4. 复制id_rsa.pub的公钥内容到github网站中
可以用cat命令或者直接进入对应文件夹查看公钥内容。

打开github网址,进入添加SSH key页面,粘贴上面的内容保存。

git命令
克隆仓库到本地

//创建、编辑文件
vim test.txt
//查看文件内容
cat test.txt
git status
查看本地仓库状态

git add
增加文件
git add 文件名
git add . (将当前目录下修改的所有代码从工作区添加到暂存区 . 代表当前目录)

git commit
将缓存区内容添加到本地仓库

git push
将本地版本库推送到远程服务器,

分支操作
git branch
查看本地分支
git branch -a
查看远程分支
创建分支
git checkout -b 分支名
创建本地分支


在本地新建分支后提交到远程

切换分支
git checout 分支名

删除本地分支
git branch -d 分支名 (必须本地当前在其它分支时才能删)
删除远程分支
git branch -r -d origin/分支名
git push origin :分支名 (如果不做这步操作,则该分支实际并不会从github.com上删除)


合并分支
git merge 要合并的分支名
版本回退
回退到上个版本
git reset --hard HEAD^
git reset --hard HEAD^^ (回退到上上个版本)
git reset --hard HEAD~2 (回退到上上个版本)
回退到指定版本
git reflog (可以查看分支的所有操作记录,第一列显示commitid)

git reset --hard HEAD commitid (回退到指定版本)

|