JAVA基础之——版本控制系统之git
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的更多相关文章
- Git基础 1 ---- 版本控制系统的介绍
1 Git 1 版本控制系统 vcs - version control system 2 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统 3 版本控制系统的主要功能 1 ...
- 分布式版本控制系统Git-----1.Git 初识
开始工作咯,师傅让我开始学习Git.刚接触我是懵逼的,"分布式版本控制系统"啥玩意啊这是,大家可不能从字面意思上理解啊,刚开始,版本控制么,我以为是团队合作的时候把开发工具.JDK ...
- 如何选择版本控制系统 ---为什么选择Git版本控制系统
版本控制系统 "代码"作为软件研发的核心产物,在整个开发周期都在递增,不断合入新需求以及解决bug的新patch,这就需要有一款系统,能够存储.追踪文件的修改历史,记录多个版本的开 ...
- 分布式版本控制系统之Git
Git Git 是目前世界上最先进的分布式版本控制系统(没有之一) 作用 源代码管理 为什么要进行源代码管理? 方便多人协同开发 方便版本控制 Git的诞生 作者是 Linux 之父:Linus Be ...
- 版本控制系统之git
一.简介 git是Linux内核项目发起者linus用C语言写的,主要用来做项目的版本控制追踪:git是无中心节点的分布式版本控制系统,也是目前很流行的版本控制系统:其安装简单,使用简单:相比传统的c ...
- 分布式版本控制系统Git-----9.Git 使用的小技巧
1. git push -u orgin master[后面push的时候可简写] 第一次push的时候-u后面加上<本地分支名><远程分支>,第二次push的时候就只需要写g ...
- 分布式版本控制系统Git-----5.Git 的push命令总结
git push git push命令用于将本地分支的更新,推送到远程主机.它的格式与git pull命令相仿. git push <远程主机名> <本地分支名>:<远程 ...
- 分布式版本控制系统Git-----4.Git 常用命令整理
1. git init 初始化 git 目录 2. git add 添加文件 git add fileName #添加指定文件 git add -i #手工选择要添 ...
- 分布式版本控制系统Git-----7.Git 使用git rebase合并多次commit
将多次commit合并,只保留一次提交历史. PS:在我练习的时候,将一个文件的代码做了多次修改,而且每次修改都给提交了,这几次改动的目的都一样,比如说修改RADEME.md,但是每次改动的只是一个小 ...
随机推荐
- Spring-JDBDTamplate 的操作
基本的 增,删,改:(只演示增加 因为他们调用的方法都是update方法): package com.hxzy.spring_jdbc_template; import org.springfr ...
- Security-OAuth2.0 密码模式之服务端实现
第一步:配置数据库 ,固定创建三张表 ,OAuth2 框架需要默认使用这三张表 我使用的时Mysql,工具为navcat CREATE TABLE `oauth_access_token` ( `to ...
- iOS学习笔记(8)——GCD初探
1. AppDelegate.m #import "AppDelegate.h" #import "ViewController.h" @interface A ...
- 配置bootstrap环境
bootstrap是一个优雅,灵活,可扩展的前端工具集,可搭建WEB页面的HTML,CSS,JavaScript工具集,最重要的是它的栅格系统. 这里不做更多的详细介绍具体可参照官方网站:http:/ ...
- SpringDataRedis java.net.UnknownHostException: 127.0.0.1 错误
找了半天发现原来配置文件中多了一个空格; idea中properties文件的127.0.0.1后面出现了一个空格,编辑器将其变深黄色了
- python学习,day3:函数式编程,带参数
# coding=utf-8 # Author: RyAn Bi def test(x,y,z): print(x) print(y) print(z) test(y=2,z =3,x=1) #形参与 ...
- java内存的分配策略
1.概述 本文是<深入理解java虚拟机>(周志明著)3.6节的笔记整理,文章结构也与书上相同,讲述的是几条最普遍的内存分配策略. 2.对象优先在Eden分配 ** 大多数情况下,对象在新 ...
- 【性能测试】:关于测试F5负载均衡的问题
在压测过程中,前置分发机的请求分发策略有多种,轮询,随机,DNS均衡,最小连接数等 问题出现的前提:因测试的一个系统对用户安全性校验较强,例如做交易之前,需要验证用户安全信息等 问题出现的现象:当lo ...
- Q239 滑动窗口最大值
给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧.你只可以看到在滑动窗口 k 内的数字.滑动窗口每次只向右移动一位. 返回滑动窗口最大值. 示例: 输入: nums ...
- Mac 10.12安装Git管理工具SourceTree
说明:Git的GUI工具应该是这款最好用. 下载: (链接: https://pan.baidu.com/s/1mhRr35Y 密码: vv67)