svn git使用/管理项目代码 (简单又全面)
1. Git介绍
用于源代码管理, 是先进的分布式代码管理工具
源代码管理的作用:
进行版本控制
方便多人协同开发

2. Git本地结构
仓库初始化 git init
设置仓库作者信息 git config user.name zs git config user.email zs@itcast.cn
3. git基本操作 (重点)
工作区变化提交到暂存区 git add 文件名 git add .
暂存区变量提交到仓库区 git commit -m 注释
查看仓库状态 git status
查看代码版本 git log
4. 撤销修改和切换版本
4.1 撤销修改
撤销修改
按照暂存区还原工作区 git checkout 文件名
按照仓库区还原暂存区 git reset HEAD

4.2 切换版本
HEAD 表示当前版本
HEAD^ 表示当前版本的上一个版本
HEAD~100 表示当前版本的前100个版本
切换到上一个版本(并且让暂存区也还原到上一个版本) git reset HEAD^
切换到指定的版本(版本号前7位) git reset 74b412f
查看操作历史 git reflog
5. 删除文件
删除文件
删除工作区和暂存区文件 git rm 文件名
提交新版本(仓库区删除文件) git commit -m 注释
撤销误删
如果已经提交了版本, 先切换版本 git reset HEAD^
还原工作区 git checkout 文件名
拓展命令
只删除暂存区文件 git rm --cached 文件名
版本切换
还原仓库区和暂存区 git --mixed reset HEAD^ 默认
只还原仓库区 git --soft reset HEAD^
还原仓库区,暂存区,工作区 git --hard reset HEAD^
三. Git远程管理
1. 创建远程仓库

2. git远程操作 (重点)
代码托管网站 gitee.com
从远程仓库第一次下载代码(自动生成本地仓库) git clone https://gitee.com/cz_zzz/InfoNews10.git
将本地版本推送到远程仓库 git push
将远程仓库的版本拉取到本地仓库 git pull
3. 代码冲突
代码冲突原因:push时其他开发者已经提交了新版本,导致本地版本和远程版本不一致
解决办法:
先pull拉取远程的最新版本, git会自动对代码进行和并
如果修改的是不同文件,自动合并成功,只需要将合并后的内容生成新版本push即可
如果修改的时相同文件, 自动合并失败,需要和其他开发人员沟通, 手动修改冲突,再生成新版本push
4. 标签
作用: 对重要的版本进行标记, 方便快速切换到指定到版本
经理:
给指定的版本加标签 git tag -a v1.0 -m "1.0版本" 3e7a2bb
将标签推送到远程仓库 git push origin v1.0
张三:
拉取远程数据 git pull
查看所有标签 git tag
查看标签信息 git show v1.0
切换到标签对应的版本 git checkout v1.0
5. 分支
作用: 当开发新功能时, 需要在新的分支上进行开发, 避免污染主分支(主分支上只保留稳定版本)
查看分支 git branch
经理:
创建新分支dev git branch dev
将新分支推送到远程仓库 git push origin dev
合并分支 git chectout master 再 git merge dev1
张三:
先拉取最新数据 git pull
切换到dev分支 git checkout dev1
在dev分支上进行开发