1 版本控制系统是什么

  当多人协作开发一套产品时,需要能够保证代码都能够共用,那么版本控制系统就应运而生。

2 GIT

  当前用的比较多的是svn和git,本文以git为例进行讲解。

  git诞生于2005年,该系统开发者对该系统制定了若干目标:

速度

简单的设计

对非线性开发模式的强力支持

完全分布式

有能力高效管理类似linux内核一样的超大规模项目

3 本地部署

3.1 Git-2.20.1-64-bit.rar

3.2 Git Base配置,打开Git Base

git config —global core.autocrlf false  避免windows换行符的问题

git config —global user.name “” 每次提交时被引用的信息

git config —global user.email “” 同上

3.3 TortoiseGit客户端

4 常用命令

git clone

git pull

git fetch

git push

5 批量操作仓库

  当大型项目需要有多个分支,且有多个分库时,就需要把分库代码全部克隆或是拉取了。

5.1 克隆分库代码 clone.bat

echo off

cd /d %~dp0

git clone git@ccccvvv/xxx.git

gut clone git@ccccvvv/xxx.git

gut clone git@ccccvvv/xxx.git

exit

5.2 批量拉取 pull.bat

echo off & color 0A

for /d %%i in (*) do (

cd %%i

git pull

cd ../

)

6 .git文件夹说明

  当克隆一个项目后,git会生成一个.git目录,几乎所有的gir存储和操作的内容都在该目录下,如果需要备份或复制一个库,拷贝这个库即可。如下git核心部分:

objects 目录,存储所有数据内容

refs 目录,存储指向数据(分支)的提交对象的指针

HEAD 文件,指向当前分支

index 文件,保存了暂存区域信息

参考书籍

Pro Git Scott Chacon 2010-07-02

JAVA基础之——版本控制系统之git的更多相关文章

  1. Git基础 1 ---- 版本控制系统的介绍

    1 Git 1 版本控制系统 vcs - version control system 2 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统 3 版本控制系统的主要功能 1 ...

  2. 分布式版本控制系统Git-----1.Git 初识

    开始工作咯,师傅让我开始学习Git.刚接触我是懵逼的,"分布式版本控制系统"啥玩意啊这是,大家可不能从字面意思上理解啊,刚开始,版本控制么,我以为是团队合作的时候把开发工具.JDK ...

  3. 如何选择版本控制系统 ---为什么选择Git版本控制系统

    版本控制系统 "代码"作为软件研发的核心产物,在整个开发周期都在递增,不断合入新需求以及解决bug的新patch,这就需要有一款系统,能够存储.追踪文件的修改历史,记录多个版本的开 ...

  4. 分布式版本控制系统之Git

    Git Git 是目前世界上最先进的分布式版本控制系统(没有之一) 作用 源代码管理 为什么要进行源代码管理? 方便多人协同开发 方便版本控制 Git的诞生 作者是 Linux 之父:Linus Be ...

  5. 版本控制系统之git

    一.简介 git是Linux内核项目发起者linus用C语言写的,主要用来做项目的版本控制追踪:git是无中心节点的分布式版本控制系统,也是目前很流行的版本控制系统:其安装简单,使用简单:相比传统的c ...

  6. 分布式版本控制系统Git-----9.Git 使用的小技巧

    1. git push -u orgin master[后面push的时候可简写] 第一次push的时候-u后面加上<本地分支名><远程分支>,第二次push的时候就只需要写g ...

  7. 分布式版本控制系统Git-----5.Git 的push命令总结

    git push git push命令用于将本地分支的更新,推送到远程主机.它的格式与git pull命令相仿. git push <远程主机名> <本地分支名>:<远程 ...

  8. 分布式版本控制系统Git-----4.Git 常用命令整理

    1. git init 初始化 git 目录 2. git add 添加文件 git add fileName       #添加指定文件 git add -i             #手工选择要添 ...

  9. 分布式版本控制系统Git-----7.Git 使用git rebase合并多次commit

    将多次commit合并,只保留一次提交历史. PS:在我练习的时候,将一个文件的代码做了多次修改,而且每次修改都给提交了,这几次改动的目的都一样,比如说修改RADEME.md,但是每次改动的只是一个小 ...

随机推荐

  1. linux环境搭建前期配置

    一.永久修改主机名 1.修改network文件 # vim /etc/sysconfig/network 加入 HOSTNAME=主机名 保存退出 2.修改hosts文件 # vim /etc/hos ...

  2. [Scala随用随学] —— sealed声明的作用

    今天在看MLlib的源码时,看到Vector的声明是sealed trait,很好奇这个sealed有什么作用,与是搜到了这个文章: http://www.cnblogs.com/rollenholt ...

  3. week 4 Vocabulary in paper

    1.Using action verbs 1.1 deffenence between action verbs and fuzzy verbs Action verbs(strong verbs) ...

  4. 【Alpha】任务分解与分配

    Alpha阶段总体任务规划 Alpha阶段我们的任务主要是恢复原先项目的代码运行,并增加一部分物理实验(二)的内容以及完善之前项目未完成的功能,例如后台管理及用户管理界面.在恢复项目部分的主要工作是将 ...

  5. E - Guess the Root 拉格朗日差值法+交互

    题目传送门 题意:告诉你存在一个未知项系数最高为10的$f(x)$,你最多可以有50次询问,每次询问给出一个$x'$,系统会返回你$f(x')$的值,你需要猜一个$x''$,使得$f(x'')=0$, ...

  6. PHP反序列化漏洞新攻击面(BlackHat 2018)

    0x00 前言   入职以来好久没有写过文章了,入职的时间里也和师傅们学到了很多,认识了很多的新朋友.最近因为BlackHat 黑客大会的一个议题,PHP反序列化漏洞利用被挖掘出新的攻击面.这里本着记 ...

  7. Add:四则运算

    输入为四则运算表达式,仅由整数.+.-.*./ .(.) 组成,没有空格,要求求其值.假设运算符结果都是整数 ."/"结果也是整数 表达式  由  项    或    项      ...

  8. activity启动模式launchMode区别和优化

    初学android的开发人员,可能会经常忽略这个重要的设置. Activity一共有以下四种launchMode:1.standard2.singleTop3.singleTask4.singleIn ...

  9. SVN无法读取cruuent修复方法

    解决方法:在网上百度和google了一大圈之后,终于得知是断电时current和txn-current文件没有写入当前最新版本号和最新版本的路径问题 当时非常抓狂,项目刷新一直为空. 1.先把curr ...

  10. PHP操作sqlserver乱码解决

    将捕获的参数编码转换为GB2312即可 function ($string){ returen iconv("UFT-8","GB2312//IGNORE",$ ...