版本控制管理工具Git/SVN
Git
Git:是一款分布式管理控制系统(团队人员不在一起),可以有效、高速地处理项目版本管理(代码管理和版本回退),有助于团队协同开发
获取项目的Git仓库
1:在现存的目录下,通过导入所有文件来创建新的Git仓库
git init—>git add .—>git status—>git commit -m “message”
2:从已有的Git仓库克隆一个新的镜像仓库
常用指令
git config --global user.email “@163.com”:设置用户名
git config --global user.name “@163.com”:设置用户邮箱
git config --list:查看设置列表信息
git log:查看提交历史日志
git revert ID:撤销指定操作并回到其上一个版本状态,一般只针对最后一次提交的记录
git reset ID:重置到指定版本,之后再查看历史时该版本之后的记录将不再显示,注意重置到某版本时,该版本之前的操作是生效的
git reflog:查看所有操作日志,适用于reset动作之后
git clone Https/SSH:克隆指定远程仓库
git remote add origin Https/SSH:本地仓库与远程仓库建立连接,未建立连接时不能执push
git push origin master:执行push动作,将本地仓库的数据上传到远程仓库
git pull Https/SSH:从远程获取最新版本并merge到本地
git fetch origin master(更安全):从远程获取最新版本到本地,不会自动merge
git branch dev:新建分支(在本地创建分支后,执行push动作时会自动在远程创建该分支)
git checkout dev:工作切换到dev分支下
git checkout -b vip origin/vip:切换到远程仓库的vip分支,此时本地没有该分支会自动创建
ssh-keygen -t rsa -b 4096 -C “xx@163.com”:SSH-key的生成
注意点
1:Git不允许多个用户同时对远程仓库的主分支origin/master进行操作;此时需要在testA目录下新建分支并将工作暂时切换到该分支,然后在testB目录下执行push动作,最后在A中将分支切换回master
2:本地仓库向远程仓库push前,要保证和远程仓库版本的同步,所以最好先pull一下,以确保除自身修改内容外的文件同步
3:使用SSH进行连接时,需要提交给服务器一个公钥,自己电脑留一个私钥
4:分支可能根据业务去划分,也可能根据开发人员去划分
SVN
svn(Subversion):基本理念与git一致,但没有本地仓库的存在,所以提交代码时只需一次,适合集中式开发
常见概念
中央库软件:VisualSvnServer
客户端:TortoiseSVN-1.8.4.24972-x64-svn-1.8.5
branches:分支
tags:小版本,如1.1、1.2等
trunk:大版本,如1.0、2.0等
连接远程库:右键>>>svn checkout>>>copy URL>>>name+pwd
提交数据:svn commit
更新数据:svn update
冲突解决:先update,合并冲突文件中的代码,并将多余的.r3/.r5等文件删除后进行commit
版本回退:右键>>>show log>>>选中指定版本>>>revert/reset
与IDEA的集成
1.所选工程要有本地库或与已与远程库建立连接
2.Settings>>>version control>>>Git/Subversion>>>配置各自的.exe所在位置,对Git需要修改SSH execubale项为Native,确认是否项目的VCS项已经更改
3.对项目右键选中Git/Subversion执行相关操作即可
常用指令图示
实操Git流程
git init
git add README.md
git commit -m “first commit”
git remote add origin https://github.com/ITHcc/webhooks.git
git push -u origin master
零散命令列表
取消add命令: git reset HEAD
执行git pull命令之后本地被覆盖
1:git reflong 查看历史更改记录
2:git reset --hard HEAD@{n} HEAD:为版本号,就前面那一串数字,n是你要回退到的引用位置
示例:git reset --hard 88ef668
Git文件名称过长无法clone
git config --global core.longpaths true
版本控制管理工具Git/SVN相关推荐
- git 强制更新远程_版本控制管理工具git的常见指令合集
今天小千就来给大家介绍一下git中比较常见的指令合集,方便大家使用git,建议收藏起来方便日后查阅. 一.常见的命令 git help <command> # 显示command的help ...
- git lib 创建新的项目在某个路径下_版本控制管理工具git的使用
一. 安装 Git(git_for_windows.xp510.com.rar) 二. 使用 进入到 git bash(命令行工具) 初始化user.name,user.email $ git con ...
- 源代码管理工具-GIT
源代码管理工具-GIT 一. git 概述 1. git 简介? 什么是git? > git是一款开源的分布式版本控制工具 > 在世界上所有的分布式版本控制工具中,git是最快.最简单.最 ...
- 常见的版本控制管理工具
常见的版本控制管理工具 出处:http://blog.sina.com.cn/s/blog_5f0e9ca50102v63c.html 配置管理工具是配置管理相关理论的实践载体,工具的功能范围在某种程 ...
- 1.公司代码管理工具GIT与SVN
想到啥说啥... 一般来讲,对于中大型公司(没进过大公司),都会进行代码加密与代码托管. 特别小的公司以及一些小型的外包公司则有可能没有,例如我现在所在的小公司,代码是本地文档库托管的,也就是说如果那 ...
- 代码管理工具 Git
之前一直使用微软的代码管理工具TFS(Team Foundation Server)..NET CORE 2.0的发布后,考虑到.NET CORE项目可以跨平台,准备把项目迁移到.NET CORE 环 ...
- 源代码管理工具GIT
简介: git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源: 作者是Linux之父:Linux Benedict Torvalds ...
- 【git】源代码管理工具 GIT的使用步骤的详细讲解
是否显示隐藏文件夹的终端命令: defaults write com.apple.finder AppleShowAllFiles YES defaults write com.apple.finde ...
- java接口自动化(四) - 企业级代码管理工具Git的应用
1.简介 首先我们自己需要将自己的代码上传到GitHub上边做好备份.用来避免万一由于某些不可控的非人为因素或者人为因素造成的代码丢失.而且GitHub是一个开源的代码管理工具.所以宏哥这里再次介绍一 ...
最新文章
- 关于tinymce的一些记事
- pythonasyncio在哪个版本好_理解Python asyncio的简洁方式
- (读书随笔)接口和抽象类的一些区别总结
- java 抽象类_什么是final?Java抽象类又是什么?抽象类能使用 final 修饰吗?
- YOLOv5在建筑工地中安全帽佩戴检测的应用(已开源+数据集)
- dfs.client.block.write.replace-datanode-on-failure
- 绕过AppLocker系列之MSBuild的利用
- mysql带唯一主建任然发生gap,mysql – 使用主键分块从大表中删除时仍然看到锁等待超时...
- 无人驾驶(再谈基于camera的高精度地图)
- Ubuntu 出现apt-get: Package has no installation cand
- arraylist的remove()循环删除问题
- 解决Mac上“文本编码Unicode(UTF-8)“不适用的方法
- android 可拖拽View的简单实现
- ​​​​​​​(复制python包,产生的问题) pip Fatal error in launcher: Unable to create process using
- Ubuntu下hadoop2.4搭建集群(单机模式)
- 关于Redis缓存和数据库一致性问题
- 一个Keil工程包含的内容
- hosts文件位置和修复hosts文件
- 通达信手机版分时图指标大全_今天教大家怎么把通达信副图指标源码导入手机通达信软件上。...
- 利用js脚本自动批量删除微博内容
热门文章
- 关于词嵌入(Word Embedding)的一些总结
- codesys电子凸轮挺杆点的设置与使用
- uniapp打包的app上架应用商店隐私政策:您的应用在用户同意隐私政策前申请获取用户个人信息
- 浙江工商大学计算机技术专硕,浙江工商大学会计专硕(MPAcc)项目介绍
- 简体中文转换为繁体中文
- 物理光学基础概念总结
- 行人重识别github开源库——HJL-re-id
- ARM Uboot经历——makefile与uboot目录
- terminate called after throwing an instance of ‘YAML::TypedBadConversion<int>‘ what(): bad conver
- DDD的创新思想:开发即设计思想