注意:每一次切换分支的时候,前提是每个分支都要提到远端,本地代码都会自动跟随改变,不需要重新pull,除非有人更新了代码
git remote add origin +地址 连接远程仓库
git clone +地址 克隆项目到本地
git init 更新本地隐藏文件初始化仓库
git add . 代码提交到本地
git commit -m "备注" 添加备注
git push 提交到远端仓库
git pull 远端仓库代码拉去到本地(别人更改文件或自己改文件之前先pull)
有的时候会显示++++++++++++++++++++++++++++++++++++++
直接esc,然后输入:q 退出即可,因为需要拉取的东西太多了
git checkout master 切换分支到master
git checkout -b dev 创建dev分支并切换到dev分支
git checkout -f dev 强制切换分支并覆盖未跟踪的文件
git fetch 更新最新的分支
git branch 查看本地分支
git branch -a 列出所有本地分支和远程分支
git branch -r 查看远程分支
git log 查看提交日志
git log --stat 显示commit历史,以及每次commit发生变更的文件
git status 显示有变更的文件
合并代码:git merge origin/dev 如果是master合并dev分支
先切换为dev分支,将代码提交到远程dev分支下,然后切换master分支,然后执行该命令git merge origin/dev; 注意,每次合并的时候,都需要先在本地提交到远程,然后切到要合并的分支上,再去合并
取消合并:git reset --hard +版本号
步骤为:git log 查询日志(红框位置为版本号)
然后执行git reset --hard 53bd8289998016f726a358634d64bb2a2b016b43
即可回退,git push 一下即可提交
合并代码之后出现冲突:git merge --abort
git配置代理:百度就行了 很简单
git 使用场景 一个分支 为1.0,另一个分支为2.0,比如说1.0修改了bug,但是2.0分支有同样的bug,怎么解决?直接复制到代码?还是合并?还是怎么办?
1.两个版本页面相同,直接合并即可
2.版本页面不一致,使用Cherry-pick合并
步骤为:
假设你在1.0分支修复了一个bug:
# 切换到1.0分支 git checkout 1.0 # 修改代码并提交 git add . git commit -m "修复了空指针异常" # 查看提交哈希值(短格式) git log -1 --oneline # 输出: a1b2c3d 修复了空指针异常
然后你就可以使用这个短哈希值a1b2c3d
在2.0分支进行cherry-pick操作:
git checkout 2.0 git cherry-pick a1b2c3d
注意事项
- 如果只输入了部分哈希值(如7位),Git会自动查找匹配的提交,前提是这7位在仓库中唯一。
- 如果出现冲突,解决冲突后使用
git cherry-pick --continue
完成操作。 - 如果不想继续cherry-pick,可以使用
git cherry-pick --abort
取消。