1、安装(基于win7系统)
- 官网下载【https://gitforwindows.org/】
- 配置安装环境:下载完成默认c盘安装路径,可以自定义。
[此后一路NEXT即可]配置账户信息
打开cmd或powershell,输入
git config --global user.name "xxxxx" //绿色部分为GitHub用户名 git config --global user.email xxxxxx@foxmail.com //这里用GitHub的注册邮箱
- 1
- 2
创建本地ssh
打开cmd或powershell,输入
ssh-key -t rsa -C "xxxxx@foxmail.com" //此处“C”要大写,邮箱使用GitHub注册邮箱
- 1
输入后中间会提示选择生产ssh-key路径以及设置密码,一路回车跳过即可 ,粘贴复制ssh或者在本地文件安装路径找到.ssh文件,找到文件夹
将ssh配置到GitHub
填写ssh资料,保存即可;
生成ssh-key后命令行会提示保存的路径。如上图。
我们找到这个路径下的id_rsa.pub
并用文本编辑软件打开
(以下为示例)ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1HsFXD5Wsx26kVdRR67e8RqxucPag+6x6SgoKrvCTDRZcU2fZ5ymYPRFyRv9bKo75rr7EX6h/HhQWXpHUqlT6iuVm2BDV8lwLGdBOlvxLBShQ64dBsqZZyyKOjiAZz5Zy2WuDmbBGjkOEBaNF8DUEOcQEKJtRm4Xt4DziJqfCOWvLPb9YCCIgP1raMaCasq3A3c+8wnSWnGy5u1ayx9Q//ypcJZ8MvrCRaNwbnWsUdTYTq6dmAd1pCr1y+GW6f2uLSH9Em1b7TymJWINIHwrSyav5a0izB7x6PcrGsWi5yAMORKAI9cfXWjW7viHdrekf7xIwXUC9PSzdJusmHx3H coiggahou@foxmail.com
- 1
- 2
复制该文件内所有文本内容
登录GitHub,点击Settings
——SSH and GPG keys
——点击右侧Add SSH key
如下图
Title随意,将所复制内容粘贴至Key
测试是否成功:
打开Git Bash终端(不是命令行或Powershell)输入ssh -T git@github.com
- 1
返回如下信息表示成功
The authenticity of host 'github.com (192.30.255.112)' an't be established. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRoTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)? es Warning: Permanently added 'github.com,192.30.255.112' RSA) to the list of known hosts. Hi coiggahou! You've successfully authenticated, but GiHub does not provide shell access.
2、使用Git命令
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
关联远程分支:git pull
推送到远程分支:git push
git的分支合并的两种方法
如何将两个分支合并到一起。就是说我们新建一个分支,在其上开发某个新功能,开发完成后再合并回主线。
1. git merge
咱们先来看一下第一种方法 —— git merge
在 Git 中合并两个分支时会产生一个特殊的提交记录,它有两个父节点。翻译成自然语言相当于:“我要把这两个父节点本身及它们所有的祖先都包含进来。”下面具体解释。
# 创建新分支 bugFix
git branch bugFix
# 切换到该分支
git checkout bugFix
# 提交一次
git commit
# 切换回 master
git checkout master
# 再提交一次
git commit
# 用 git merge 把 bugFix 合并到 master
git merge bugFix
(master 的分支被混入到所有的提交记录,但 bugFix 没有,所以要进行下面的操作)
# 再把 master 分支合并到 bugFix(因为 master 继承自 bugFix,Git什么都不用做,只是简单地把 bugFix 移动到 master所指向的那个提交记录。)
git checkout bugFix;
git merge master
2. git rebase
第二种合并分支的方法是 git rebase
。rebase 实际上就是取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。
Rebase 的优势就是可以创造更线性的提交历史,这听上去有些难以理解。如果只允许使用 Rebase 的话,代码库的提交历史将会变得异常清晰。
# 创建新分支 bugFix分支
git branch bugFix
#提交一次(提交在master分支上)
git commit
# 切换到bugFix分支
git checkout bugFix
# 提交一次(提交在bugFix分支上)
git commit
#使用git rebase
把 bugFix 分支里的工作直接移到 master 分支上(移动以后会使得两个分支的功能看起来像是按顺序开发,但实际上它们是并行开发#的)。
git rebase master
注意:提交记录 C3 依然存在(树上那个半透明的节点),而 C3'是我们 Rebase 到 master 分支上的 C3 的副本。
#切换到master分支上(为了进行更新master的操作)
git checkout master
#把master的 rebase 到 bugFix 分支上(由于 bugFix 继承自 master,所以 git 只是简单的把 master 分支的引用向前移动了一下而已。)
git rebase bugFix