赞
踩
Git
Git是一个版本管理控制系统(VSC),它可以在任何时间点,将文档的状态作为更新记录保存起来,也可以再任何时间点,将记录回复回来。
版本管理是一种记录文件变化的方式,以便将来查阅特定版本的文件内容。
集中式和分布式
集中式(SVN)
所谓集中式版本控制系统就是版本库集中放在中央服务器,而干活的时候用的是自己。所以要先从服务器取得最新的版本,写完代码后,再把自己的代码推送到中央服务器。
集中式最大的问题是必须联网才能工作。而且数据集中保存在服务器,导致服务器数据一丢失,那么所有的数据就会丢失。
分布式(Git)
分布式版本控制系统则是每个人电脑都是服务器,都有完整的版本库。每个人之间都可以可以推送版本库修改。
但通常都会以一台电脑充当”中央服务器“,方便大家交换修改。因为其实分布式,所以就算”中央服务器“崩溃,也不影响数据的保存,也不影响大家的工作。
Git基本工作流
git仓库 | 暂存区 | 工作目录 |
用于存放提交记录 | 临时存放被修改的文件 | 被git管理的项目目录 |
开发者每次在git中提交项目状态时,都要将本次修改的文件从工作目录提交到暂存区,然后再将暂存区中的文件提交到git仓库。
Git工作区
加上远程仓库,git则是共有四个工作区域
Git分支
- 主分支(master):第一次向 git 仓库中提交更新记录时自动产生的一个分支。
一般不做改动,用于向外界发布的代码存在这里,保持稳定性。
2.开发分支(develop):作为开发的分支,基于 master 分支创建。
开发过程在该分支进行,经过测试后无问题则将其合并到主分支上。
3.功能分支(feature):作为开发具体功能的分支,基于开发分支创建
功能开发完成后,经过测试无问题则将其合并到开发分支上。
功能分支 -> 开发分支 -> 主分支
Git的使用
使用前配置
- git config --global user.name 提交人姓名 配置提交人姓名
- git config --global user.email 提交人邮箱 配置提交人邮箱
- git config --list 查看git配置信息
配置只需执行一次,若要修改,重复操作即可。
提交
进入项目文件夹目录下
- git init 初始化git仓库 ---- 会生成一个.git的隐藏文件夹
- git status 查看文件状态
- git add 文件名 将文件添加到暂存区中, 也可以用 . 代表全部
- git commit -m 提交信息 向仓库中提交代码
- git log 查看提交记录
撤销
- git checkout 文件名 用暂存区中的文件覆盖工作目录中的文件
- git rm --cached 文件名 将文件从暂存区中删除
- git rest --hard commitID 将 git 仓库中指定的提交更新记录恢复出来 并且覆盖暂存区和工作目录
分支命令
- git branch 查看分支
- git branch 分支名称 创建分支
- git checkout 分支名称 切换分支(在切换分支之前,当前分支上的工作一定要提交到git仓库中,保持当前分支上的工作区时完全干净的)
- git merge 来源分支 合并分支(先切换回被合并的主体分支,在去合并要被合并的分支)
- git branch -d 分支名称 删除分支(分支被合并后才允许删除)
- (git branch -D 分支名称 强制删除)
暂时保存更改
在git中,可以暂时提取分支上所有的改动并存储,让开发人员得到一个干净的工作副本,临时转向其他工作。使用场景:分支临时切换
- git stash 存储临时改动
- git stash pop 恢复改动
推送到远程仓库
- git push 远程仓库地址 分支名称
- git remote add 远程仓库地址别名 远程仓库地址
- git push 远程仓库地址别名 分支名称
- git push -u 远程仓库地址别名 分支名称
-u 记住推送地址及分支,下次推送只需要输入git push即可
克隆仓库
git clone 仓库地址
更新仓库
git pull 远程仓库地址 分支名称
项目常用git指令(简易版)
拉代码
git clone <url> 克隆仓库
提交代码
git pull 先更新代码
git status 查看文件状态
git add . 添加修改过的文件
git commit -m "描述" 上传到代码仓库
git push 推送到远程仓库(注意网络状态)(当前在哪个分支下就会自动提交到哪个分支)
新建分支
git checkout -b develop 在本地新建分支develop 并切换到develop
git push -u origin develop 将本地分支推送到远程git仓库
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。