下面是一些git的常用命令和基本操作,可以当做平常的笔记查询,用于学习!!!
文章目录
前言
一、git
二、git常用命令
总结
前言
下面是一些git的常用命令和基本操作,可以当做平常的笔记查询,用于学习!!!
提示:以下是本篇文章正文内容,下面案例可供参考
一、git
Git是一个版本管理控制系统(缩写VCS),它可以在任何时间点,将文档的状态作为更新记录保存起来,也可以在任何时间点,将更新记录恢复回来。
在开发中,Git已成为现在主流的一种代码托管技术(版本管理工具),基本上大多数的公司都在使用Git进行协同开发。很多代码托管平台也是基于Git来实现的。
Git特点
优点:
- 适合分布式开发,强调个体;
- 公共服务器压力和数据量都不会太大;
- 速度快、灵活;
- 任意两个开发者之间可以很容易的解决冲突;
- 离线工作。
缺点:
- 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息;
- 权限控制不友好;如果需要对开发者限制各种权限的建议使用SVN。
- Git与SVN的区别
- SVN是集中式版本控制系统,而Git是分布式版本控制系统,Git与SVN的区别可参考Git与SVN的区别。。
二、git常用命令
里面commit的前7个字母就是版本号,我们可以通过git reset --hard 版本号进行回滚 。
(注:当我们的终端在git log后界面无法输入命令时,切换到英文输入法输入Q即可)
将本地仓库关联到远程仓库
git remote add origin git@git.acwing.com:xxx/XXX.git
将当前分支推送到远程仓库
git push -u (第一次需要-u以后不需要)
- 将本地的某个分支推送到远程仓库
git push origin branch_name
将远程仓库XXX下载到当前目录下
git clone git@git.acwing.com:xxx/XXX.git
创建并切换到branch_name这个分支
git checkout -b branch_name
查看所有分支和当前所处分支
git branch
工作区和暂存区都是独立,创建一个新分支也是在master分支当前结点下创建了一个新的分支dev
切换到branch_name这个分支
git checkout branch_name
此时就回到了master分支
将分支branch_name合并到当前分支上
git merge branch_name
此时就将dev分支加到了master分支上面。
删除本地仓库的branch_name分支
git branch -d branch_name
当然合并也不会完美,也会发生冲突 。创建一个新的分支dev2,并修改对应的read.txt文件并提交,相当于创建了“9999”结点。
切换回master分支。
在master分支中修改read.txt文件并提交,相当于master分支创建了“10 10 10”结点。
此时将dev2和master分支进行合并,将dev2的信息合并到master。此时就会发生冲突。
此时我们直接vim文件然后自己进去修改看自己想要什么,然后在添加到暂存区,最后提交版本即可。
将当前新创建分支推送到云端,但是云端没有该分支就会发生报错。
设置本地的branch_name分支对应远程仓库的branch_name分支
git push --set-upstream origin branch_name
本地的分支删了,云端的分支不一定被删;同时云端的分支被删,本地的分支也不一定被删。
将本地的dev3分支删除。
但是云端分支还有。
删除远程仓库的branch_name分支
git push -d origin branch_name
新创建一个dev4分支,然后同步云端,在云端也创建对应的分支dev4
将本地的分支dev4删除(删除分支得切换回主分支)
将远程的branch_name1分支与本地的branch_name2分支对应
git branch --set-upstream-to=origin/branch_name1 branch_name2
首先我们需要在本地创建一个分支,然后再执行上述命令,将云端的分支拉取到本地
将远程的branch_name分支拉取到本地
git checkout -t origin/branch_name
总结
上面是一些git的常用命令和基本操作,可以当做平常的笔记查询,用于学习!!!