1 下载软件并安装
https://git-scm.com/
2 开发人员关联代码托管平台
2.1 远程代码托管平台注册账号
- github:https://github.com/
- 码云:https://gitee.com/
2.2 远程代码托管平台建立空仓库
- 一般在页面右上角的选项中
2.3 生成本地人员秘钥数据
在windows的cmd窗口执行以下命令:
- ssh-keygen -t rsa -C “邮箱地址”
C:\Users\Administrator>ssh-keygen -t rsa -C "12345678901@xx,com"
2.4 配置远程仓库开发人员
- 打开C:/Users/Adminstrator/.ssh/id_rsa.pub 文件,复制其中的内容,添加到远程仓库的 SSH 列表中
- 在网站个人设置中添加开发人员公钥
- 以github为例:右上角–>setting–>左边窗口选择SSH and GPG kys–> New SSH key–>将复制的内容粘贴进去即可
- 以github为例:右上角–>setting–>左边窗口选择SSH and GPG kys–> New SSH key–>将复制的内容粘贴进去即可
3 本地仓库关联远程仓库
- 先创建一个文件夹作为本地仓库
3.1 关联本地开发人员
- 打开命令窗口:进入创建的文件夹 > 右键 > 点击 Git Bash Here
- 设置用户名::
git config --global user.name "用户名"
- –global 表示本机所有仓库都使用该配置
- 设置邮箱:
git config --global user.email"邮箱"
- 如果需要删除配置信息,以删除用户名为例:
git config --global --unset user.name
- 查看配置信息:*
git config --list
3.2 初始化本地仓库
git init
- 文件夹中自动生成.git隐藏文件夹(版本库)
3.3 关联远程仓库
- 复制仓库地址
以github为例:
2. 关联远程仓库
git remote add origin 仓库地址
3.4 同步(更新)仓库信息
git pull -–rebase origin master
或(第一次同步)
git clone
3.5 查看远程仓库信息
git remote
或
git remote -v
4 版本管理
4.1 暂存区、本地仓库(工作区)、远程仓库存
- 暂存区:临时存储代码的缓存区域,将非常频繁的小改动统一存 储起来,等代码成型可以提交了,就在将暂存区的数据提交到本地仓库
- 本地仓库:本地仓库是一个接受代码版本管理的仓库,这个仓库中数据会按照提交历史进行版本管理控制,方便在没有网络连通的情况下提交的数据依然接受版本管理
- 远程仓库:远程仓库是一个多人协同开发时的公共仓库,保持 24 小时在线,在联网时可以同步到最新的代码
4.2 查看文件状态
git status
### 4.3 将文件添加到缓存区(纳入管理)
git add 文件名
- 添加所有需要添加的文件
git add.
4.3 提交文件
4.3.1 新文件提交
git commit 文件名 -m '注释'
- 提交所有文件
git commit -a -m ‘注释‘’
- 提交文件test3.txt,提交后再查询状态就没有提示了
git commit test3.txt -m '提交test3文件'
4.3.2 旧文件提交
- 通过更新将其他人员修改的代码同步
git update
或(在Windows中)
git update-git-for-windows
- 先用git status确定文件状态,再按旧文件流程提交即可
4.4 删除文件
git rm 文件名
- 删除文件之后要git commit 保持工作区和版本库一致
5 推送到远程仓库
- 提交代码后就可以推送到远程仓库
5.1 第一次推送
git push -u origin master
- -u 设置默认推送方式,关联本地仓库和远程仓库
- master是主分支,也可以推送到其他分支
5.2 非首次推送
git push origin master
或
git push
- 完整的推送命令
git push <远程主机名><本地分支名>:<远程分支名>
6 代码回滚
在未推送到远程仓库前,如果发现已经已经提交的代码出现问题,就可以回退到以前提交的正常版本
6.1 查看提交历史
- 查看提交简要信息
git reflog
- 查看提交历史
git log
- 从git log 或git relog查看到的提交编号,都可以用于回滚操作
6.2 代码回滚
git reset --hard 提交编号
- 将指定版本提交记录和代码全部回滚
- 通过把分支记录回退几个提交记录来实现撤销改动,退回后,该版本之后的所有操作失效,体积记录也只回到该版本
- 每次回滚操作时手工记录当前的版本信息,即使回滚了,也可以通过手工记录的版本信息,将代码找回来,相当于“滚”回来
7 分支管理
通过不同的分支,完成不同功能的开发
- 查看本地分支
git branch
- 创建分支
git branch [name]
- 切换分支
- 不同分支的开发,互相之间是独立的
git checkout [name]
- 合并分支(将指定分支合并到当前分支)
git merge 分支名
- 将dev分支合并到主分支
# 先切换到主分支
git checkout master
# 将dev分支合并到主分支
git merge dev
- 删除分支
- 分支一旦创建,没有特殊情况不允许删除
git branch -d 分支名
- 强制删除分支(使用-d失败时,如分支还没有被合并)
git branch -D 分支名
- 分支重命名
git branch -m 分支名