git代码管理常用命令

2021-10-18  本文已影响0人  jimmyyoung
初始化命令
git init 
管理目录下得文件状态 
git status
管理指定文件(状态由红变绿)
git add 文件名 
提交代码并描述版本信息
git commit -m "描述信息" 
配置全局邮箱和用户名  所有项目都会生效
git config --global user.email "email@xx.com"
git config --global user.name "name"
查看所有提交过的版本信息
git log 

加上参数  --pretty=oneline,只会显示版本号和提交时的备注信息
git log --pretty=oneline

查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)
git reflog 
工作区红色状态回到修改前的状态
git checkout
暂存区的文件回到工作区红色状态 即取消add
git reset HEAD
从版本库回到某个版本的暂存区  即add了但没commit
git reset --soft 版本号
从版本库回到某个版本的工作区红色状态 即修改了没有add
git reset --mix 版本号
从版本库回滚到某个版本
git reset --hard 版本号
查看分支
git branch
创建分支
git  branch 分支名称
切换分支
git checkout 分支名称
创建并切换分支
git checkout -b 分支名称
合并分支 即将某个分支合并到当前分支
git merge 某个分支
删除分支
git branch -d 分支名称
给远程仓库取别名
git remote add origin 远程仓库地址
向远程推送代码
git push origin 分支
克隆远程仓库代码(会把所有分支代码拉下来)
git clone 远程仓库地址 
拉取远程代码
git pull origin 分支
其实它是两步
git fetch origin 分支
git merge origin/分支
查看提交记录 显示提交记录的树状图
git log --graph
git log --graph --pretty=format:"%h %s" (格式化只显示版本hash值和提交信息)
变基rebase应用场景一(最好是在自己本地做,已提交到远程仓库的不要这样做)
多个提交记录整合成一个提交记录
 -  从HEAD到某个版本的提交记录合为一个 :git rebase -i 版本号
 -  将最近的n条记录合并为一个:git rebase -i HEAD~n 
执行后编辑 将希望被合并的版本变为s 
返回后再编辑 合并后的提交记录
变基rebase应用场景二
使用rebase合并代码 优化提交记录树状图
将当前分支变为基干 并将某个分支代码合并到当前分支 
git rebase 某个分支
再切换到上面的某个分支 执行git merge 之前的当前分支
变基rebase应用场景三
从远程拉代码git pull origin 分支,会将本地代码和远程代码合并,但提交记录也会产生分叉 
使用rebase的话 将上面操作变为一下两步
git fetch origin 分支
git rebase origin/分支
这样就不会产生分支
git rebase执行时如果产生冲突 先要解决冲突再执行
git rebase --continue
git配置beyondcompare 快速解决冲突
git config --local merge.tool bc4
git config --local mergetool.path '安装目录'
git config --local mergetool.keepBackup false //不保留备份
遇见冲突时
git mergetool //执行后会打开比较软件 然后产生冲突的文件会自动打开 解决冲突后保存
github多人协同开发
1.可以先建组织 再邀请成员 再设置项目权限
2.也可以某个项目邀请成员
代码review
提交代码后new pull request等待审核者审核
给开源项目提交代码
先fork项目到自己仓库
再new pull request
gitignore忽略文件
github有开源项目 每种项目的推荐忽略文件可以用来参考复制
wiki文档 共同编辑的文档 一般用来写项目介绍文档等
issue 可以用来提问讨论交流
上一篇下一篇

猜你喜欢

热点阅读