1.git的下载地址:Git - Downloads
2.git的管理工具有2个:TortoiseGit – Windows Shell Interface to Git 和SourceTree
目前idea已经集成了git,本人使用idea集成git,配置环境变量后,在idea窗口中可以使用命令操作
3.安装git完成后,进行git配置
git config --global user.name "kaliarch"
git config --global user.email kaliarch@anchnet.com
git config --list #查看配置
4.git 原理解析图
可以结合git命令观看此图
5.拉取代码: git clone url //从远端拉取代码到本地
git clone -b dev https://gitee.com/woniu/git-test.git // 拉取远程指定分支dev 到本地
6.提交代码:
git pull //先更新本地仓库代码
git add // 添加文件到本地仓库 暂存区
git commit // 提交代码 到本地仓库的 版本库
git push // 提交代码 到 远端仓库
二. 进阶篇
1. 切换分支
git checkout 分支a 从分支a 到分支b: git checkout 分支b
//1. 分支a 上有修改的 ,但没有提交,导致切换分支b报错
git stash // 先暂存
git checkout b // q切换分支
git stash pop // 释放暂存, 注意可能会有冲突
// 2. 远端新建的分支,本地没有拉取,直接切换分支会导致报错找不到分支
使用 git fetch // 更新本地仓库 的版本库 后 再更换分支
// 3. maven 编译导致的报错,使用maven 命令 清理本地
mvn -U clean package -Dmaven.test.skip=true -DskipTests=true -pl 服务名称 -am javadoc:javadoc;
mvn -U clean package -Dmaven.test.skip=true -DskipTests=true -Dappname=服务名称 -DAPP_NAME=服务名称 -P服务名称 -pl 服务名称 -am -P dev
2.错误的 提交 commit 后,进行撤销, 注意没有push
git status // 查看本地分支当前状态
git log // 查看提交历史 获取 commit_id
git reset --hard commit_id // 回退这个提交
3.拉取代码出现冲突4
// 本地更改某个文件后,选择放弃
git revert 文件名
// 放弃本地修改,强行拉取远端代码
git fetch --all
git reset --hard origin/master
git pull // 这一步为了同步远程代码,不需要的话可不执行
// 拉取远端代码,提示冲突
先 git stash 再 git pull 然后 git stash pop
如果还是提示冲突,则需要解决
解决时,插件 上 会提示, 可以选择 直接 使用别人的代码 ,或者 自己的代码
如果 要兼容, 只能一个个 筛选解决
4.强推本地代码到远程仓库(慎用)
git push -f origin master //需要强制将本地代码推送至远程仓库之中
git push origin master --force