Git是一个开源的分布式版bai本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。
Git的功能特性:
从一般开发者的角度来看,git有以下功能:
1、从服务器上克隆数据库(包括代码和版本信息)到单机上。
2、在自己的机器上创建分支,修改代码。
3、在单机上自己创建的分支上提交代码。
4、在单机上合并分支。
5、新建一个分支,把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
6、生成补丁(patch),把补丁发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
常用命令
- git init 创建一个本地版本库
- git remote add origin https://gitee.com/xx/xx.git 第一次添加远程库地址
- git status . 查看当前版本
- git add . 添加当前目录的所有文件到暂存区
- git commit -m"版本备注" 提交暂存区到仓库区
- git push origin master 上传本地指定分支到远程仓库 [origin=起源][master=分支名称]
- git push origin :dev 删除远程的dev分支(执行推送分支就是将空分支推送上去也就是删除了该分支)
- git pull origin master 取回远程仓库的变化,并与本地分支合并 [origin=起源][master=分支名称]
- git clone 地址 下载一个项目 -- 拉项目到本地用这个命令!
- git clone -b dev 地址 下载远程库的dev分支 -- 拉项目到本地用这个命令!
- git checkout 分支名 切换分支,如果分支名改为文件名或“.”的话,可以从远程仓库的文件替换本地文件。
- git checkout dev 本地创建dev分支并且绑定远程分支dev
- git checkout origin/dev -b dev 拉取线上新分支到本地
- git branch -a 查看所有分支 前面本地 后面远程仓库
- git branch -d dev 删除本地dev分支
- git branch 分支名 新建本地分支 -- 建完后可直接git pull origin 分支名 拉取线上代码
- git log 显示当前分支版本历史 按q退出
- git stash 保存工作现场
- git stash pop 取出工作现场
- git stash clear 清除工作现场
- git merge --no-ff -m'修复bug' dev 合并分支 (可以保存你之前的分支历史。能够更好的查看 merge历史)
- git remote set-url origin 地址 切换远程库
- git revert 版本号 git log查看版本号 已经push到线上库,就用这个回退 (对于已经把代码push到线上仓库,你回退本地代码其实也想同时回退线上代码,回滚到某个指定的版本,线上,线下代码保持一致.用这个命令) 参考:git回退版本(线上和本地仓库)_阿杜大的博客-CSDN博客_git本地仓库回退版本
- git remote -v 查看远程仓库地址
- git remote set-url origin https://gitee.com/xx/xx.git (新地址) 设置远程仓库地址
- git fetch origin 更新远程仓库数据到本地
- git checkout -- . 撤销所有编辑
- git reflog 可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)
- git reset --hard dcaf47d 回退到指定版本,版本号通过git reflog查看
- git cherry-pick dcaf47d 当前分支合并某次提交, 版本号通过git log查看