Git分支学习一

Git使用干货

1.Git背景介绍

作为分布式版本控制系统(Distribute Version Control System, DVCS),与本地版本控制系统,集中式版本控制系统相比,客户端不只获取最新的版本快照,而是把所有的代码镜像拉下来。这样的好处在于,如果服务器出现意外,可以拿任意一个本地仓库,即本地镜像恢复。

	 Git和其他版本控制工具相比,对待数据方式存在差异。大部分系统以文件变更历史方式存储信息,即基于差异的版本控制。如果一个文件一直未做修改,那么他一直无变化。而git则可以看做是对小型文件系统的一些列快照,每个版本都会对文件做一个版本记录。
	   补充:
	    1.1git在所有数据存储时,都会校验引用和。基于git中的文件的内容和目录结构计算出一个长度四十位的十六进制字符。
	    1.2git一般很难删除,可以放心操作(只要有提交,很难丢失)。如果内容出现混乱或者丢失,可以找撤销回退之术。
	    1.3git有三种状态:
	    已修改(modified),已经修改还未入库。
	    已提交(commited),表示数据已经安全保存到本地数据库。
	    已暂存(staged),已暂存,下次提交到快照中。

2.安装Git

2.1 Linux系统安装
	 方式一:[RPM] sudo dnf install git-all
	 方式二:[Ubuntu] sudo apt install git-all

3.Git配置文件

git配置文件 
	3.1 /etc/gitconfig:系统级配置文件 git config --system
	3.2 ~/.gitconfig 或 ~/.config/git/config 文件: 只针对当前用户 --global
	3.3 .git/config :当前仓库配置文件 --local

查看命令
git config --list --show-origin

4.用户配置

	(官方给出的是--global的,即当前用户配置级)
	$ git config --global user.name "John Doe"
	$ git config --global user.email johndoe@example.com
	$ git config --list 
	$ git help
	$ git help config
	注:1.编辑器也可以配置
	$ git config --global core.editor emacs
	(Vim、Emacs 和 Notepad++)
		2. -h 很好使

5.Git基础使用

每个文件存无非就是两种状态,已跟踪和未跟踪。即已经纳入版本控制和未纳入版本控制,纳入版本控制的状态有可能是未修改,已修改和已暂存。
	5.1 $ git status 检查文件状态
		$ git status -s
		$ git status --short
	5.2 $ git add 开始跟踪文件,记录的是add时的版本,如果add后又改动了
肯定是要再add一遍的。
   5.3 忽略文件名存入 .gitignore文件内
   5.4 $ git diff 更加具体的展现文件内容差异
        $ git diff --cached 查看已暂存起来的变化
   5.5 $ git commit
     	$ git commit -m "xx"
        简略写法,跳过暂存区
        $ git commit  -a -m "xx"
    5.6 $ git rm xx   
    	移除文件
    	$ git rm -f 
    	如果删除之前文件已经修改或者放到暂存区,文件必须使用删除选项 -f 。这是一种安全特性,用于防止误删未添加到快照中的数据。
    	$ git  rm --cached  xx
    	将文件从git库删除,但是仍保留在当前工作目录中。使用场景,文件忘添加到 .gitignore 文件中去,导致误上传。
   5.7 $ git mv  file_from file_to
   		 移动文件,内置一次add操作
   5.8 $ git log 
          查看提交历史
          $ git log --stat 
          查看每次提交的简略信息
          $ git log --pretty=online
		  设置历史展现格式,比如当前就是每次提交一行展示,可以后面再加 --graph 展现分支,合并历史。
		  $ git log  --since=2.weeks
		  限制输出长度
	5.9 $ git commit --amend
	     文件放入暂存区后发现需要撤销。当上次提交以来还没有做任何修改,提交后马上执行此命令,快照保持不变,修改的只是提交信息。下次提交会代替撤销的提交。
	5.10 $ git reset  HEAD <file>
		  取消暂存
	5.11 $ git  checkout -- <file>
	      撤销对文件的修改
    5.12 $ git remote  -v
    	  列出远程服务器分支
    	  $ git remote  add <shortname> url 
    	  添加远程仓库
    	  $ git fetch <shortname>/<remote>
    	  直接拉但是不会合并本地文件
    	  $ gti push <remote> <branch>
    	  将branch分支推送到remote远程服务器上
    	  $ git remote  show <remote>
    	  查看远程某个仓库
    	  $ git remote rename aa bb
    	  改名
    	  $ gti remote remove / git remote rm 
    	  移除
    5.13 $ git tag
    	 打标签,标签分为轻量标签和附注标签
    	 $ git tag -a  v11 -m "xx"
    	 $ git show v11
    	 $ git push orgin <tagname>
		 共享标签
		 $ git tag -d  v1.4  /  git push  <remote> :refs/tags/ <tagname>
	 5.14 $ git checkout 
	 	指向某个版本 	  

6 Git分支

   Git 分支有五个对象:三个Blob对象(保存文件快照),一个树对象(记录目录结构和blob对象索引),一个提交对象(包含指向前述树对象的指针和所有提交信息)。
   $ git branch test.
   创建分支
   $ 
    	    	         	  
      补充中 。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值