Git的使用小结
1. git是一种分布式版本控制工具。目前项目中比较常见的版本控制器有SVN、CVS等,这些版本控制工具属于集中式版本控制器。集中式版本控制器,有一个中央服务器,开发人员的开发机从主服务器上下载了项目,开发后提交到主服务器,这样的话,如果中央服务器崩溃了,会给整个开发造成不可挽回的影响.分布式版本控制器,是每个开发机都有一个完整的版本库,开发机之间互相传递版本内容.
2. 安装:在window环境下使用git需要模拟linux系统环境,
3. 安装完成后可执行文件有3个:
- git bash
仿Linux命令行(推荐使用)
- git cmd
windows命令行
- git gui
可视化窗口
4.一些命令行的基本操命令
- ls:查看信息;
- ls -a:查看所有信息,含有字母d的是目录即文件夹,没有的即是文件;
- pwd:显示当前所在目录;
- cd:进入目录;
- cd .. :退出当前目录;
- /:根目录
- 因为linux没有d,e,f盘,所以要进入这些盘,需要先退到根目录/,然后在cd e/f/d;
- 如果目录名有空格,需要在名字外包裹引号:cd "Document and Settings";
5.安装完成后,需要进一步设置用户名和email。因为git是分布式版本控制工具,因此需要每台开发机自报家门。
$ git config --global user.name "gsf"
$ git config --global user.email "gong-sf@163.com"
--global表示将设置内容配置到全局,这样整个系统的用户都应用这个设置
6.针对全新的项目
- 先执行初始化: git init:执行完后,会在当前目录下生成一个.git的目录,该目录是**隐藏**的。这个目录不能轻易改动,里面保存着所有的git配置。可以通过ls -al查看隐藏文件
- 查看文件有没有被修改的状态:git status,无论文件是否放入暂存区,只要git监控到文件增加、修改、删除,都可以使用该命令来查看。
- 暂存库:临时存储;版本库:已经存在的,只是更新或修改删除;
- 将新增加的文件加入暂存库:git add 文件名;
- 可以用git status查看是否加入了暂存库;
- 提交到版本库(必须加注释)git commit -m "comment";
- git log 查看日志;
7.已有文件的项目
- git init
- 有时需要忽略一些特殊文件,那就需要在项目根目录下创建个.gitignore文件,里面写需要忽略的文件,注意直接创建没有文件名的文件在window是不可行的,需要用记事本创建,另存为.gitignore,文件类型选ALL FILES,
- 批量加入暂存库git add -A;
- 有时,并未添加新文件,只是在已有文件做些修改删除,那么可以使用git commit -a -m "comments";
- 如果删除文件有两种方法:
- 现在工作区里删除,然后运行git commit -a -m "";
- 直接运行git rm 文件名,然后commit;
- 更改后,添加到暂存库前,可以用git diff 比较不同处;
8.回退:
- head是指向某版本的指针,git reset --hard head~1:上一个版本;
- 如果要回退到指定的版本:git reset --hard +log中对应的id;
- git log 按q退出;
- 查看所有指令列表:git reglog:也可查到对应的id;
9.冲突:
- master是主分支;可以建很多副分支;
- git checkout + 分支名:切换分支;
- git checkout -b +分支名:创建新分支;
- git branch:查看分支,其中带*的是当前所在分支;
- 快速合并分支:git merge 分支名;(不显示合并过程);
- 阻止快速合并分支:git merge --no-ff,如果忘记加入注释信息,可以按:q退出;
- git branch -d 分支名:删除分支;
- 如果两个分支同时改动,然后合并,就会有冲突,需要手动处理冲突,再提交;
10.分支合并图:
git log --graph --pretty=oneline --abbrev-commit;
11.存储当前工作区()用户修复bug;
- 主要是用户修改了文件,未提交,再去处理另一个文件的bug,那就先用git stash暂存当前现场,修复完后,用git stash list显示stash,用git stash pop恢复工作现场并删除stash;
- git branch -D:强制删除分支,主要用于,该分支已经做过了更改,并未合并,就删除的情况,该命令少用,以防误删.
12.别名设置:
- 命令行配置:git config --global alias.s "status";
- 在配置文件中设置:到用户的根目录(用cmd进入命令界面显示的那个目录)下找到.gitconfig文件,直接修改该文件内容也可以到达设置的效果。
Git的使用小结的更多相关文章
- Git 的BUG小结
Git 的BUG小结 Git 在push的时候出现了: fatal: The remote end hung up unexpectedly 在网上找了非常多 发现出现了下面错误提示也可能是同样的问 ...
- SVN和Git代码管理小结
SVN和Git代码管理小结 之前,先用的是SVN,后来用了Git,最近又在用SVN. 关于代码管理,写几句. 由于自己参与的项目,人通常不超过10个人,版本不是很多,协作比较正常,感觉SVN ...
- git submodule 使用小结
git submodule 使用小结 原文链接 http://blog.gezhiqiang.com/2017/03/08/git-submodule/###### Git Submodule 允许一 ...
- 转:Git: git stash 用法小结
一.应用场景 综合下网上的介绍和资料, git stash (git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑 ...
- Git工具使用小结
昨天开始看一套java接口自动化的视频,今天看到的一章是关于git这个工具使用的,上大学那会用过svn作为版本管理工具,包括现在所在的公司,用的也还是svn进行管理.其实老早就听闻过Git,Githu ...
- git帮助和小结
获取帮助 想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,方法有三: $ git help <verb> $ git <verb> --help $ man git ...
- git知识简单小结
git特点: 1)分布式 2)存储快照而非差异 3)本地有完全的版本库,几乎所有操作都在本地 4)有内在的一致性,SHA1 5)优秀的分支管理 6)支持各种协同模式 7)开源,有一些第三方软件可整合使 ...
- git 常规使用小结
总结下 git 的常规使用: 一般我们使用 git 来维护项目代码. 前提背景: 远程服务器上代码库,包含分支: 1.master - 版本发布分支 2.dev - 平时开发用的分支 一般操作流程: ...
- Git+GitHub 使用小结
1.Git安装完成后需要做的配置 $ git config --global user.name "Your Name" $ git confi ...
- Git命令使用小结
一.上传你的代码的基本方式 0.在github网站上登录你的账户cynthiawupore,然后新建一个仓库demo 1.初始化 $ git init 2.添加文件夹下所有文件到仓库 $ git ad ...
随机推荐
- UVA 11552 Fewest Flops(区间dp)
一个区间一个区间的考虑,当前区间的决策只和上一次的末尾有关,考虑转移的时候先统计当前区间出现过的字母以及种数ct 枚举上一个区间的末尾标号j,规定小于INF为合法状态,确定j之后看j有没有在当前的区间 ...
- Java 集合框架_下
Map接口 特点: [1]Map接口称为键值对集合或者映射集合,其中的元素(entry)是以键值对(key-value)的形式存在. [2]Map 容器接口中提供了增.删.改.查的方式对集合进行操作. ...
- [CV笔记]inRange对图像进行分割
先把图像转为hsv空间,然后对图像进行inrange取到hsv范围内的图像,我这里要做的是取到图中的几个白色区域以及里面的手写数字,方法可能不是最好的,因为刚入门cv没几天,先试着用所学取到这几个区域 ...
- Processing分形之一——Wallpaper
之前用C语言实现过一些分形,但是代码比较复杂.而对于天生对绘图友好的Processing,及其方便. 在大自然中分形普遍存在,我们用图形模拟,主要是找到一个贴近的函数. 代码 /** * Wallpa ...
- React 官方脚手架 create-react-app快速生成新项目
进入新公司已经半年了,各个业务线,技术栈都已经熟悉,工作也已经游刃有余,决定慢下脚步,沉淀积累,回顾一下所用技术栈所包含的基本知识,以及再公司中的实战. 首先回顾新项目搭建 react脚手架目前使用较 ...
- jvm | 基于栈的解释器执行过程
一段简单的算术代码: public class Demo { public static void main(String[] args) { int a = 1; int b = 2; int c ...
- Python——print用法详解
1.print语法格式 print()函数具有丰富的功能,详细语法格式如下:print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=Fa ...
- ★iOS 性能测试工具 SDK
一.概括 1. 做一个类似GT的性能测试工具: 2. 第一期主要是CPU.内存功能,要求可以绘制曲线,可以选择曲线区间,自动计算最小值.最大值.均值等,支持曲线全屏显示 目标的视觉效果是类似股票走势图 ...
- Hexo + Github Pages搭建的个人博客
这个不算是新手的搭建流程,如果你恰巧看见这篇文章,希望你已经安装好node.git等软件,因为第一步的环境搭建准备并没有详写,默认都会了.希望能解决你的问题. 步骤: 一. 搭建环境准备 二.安装he ...
- JavaScript之基操
局部变量前面要加var 如 var name = "jiahuai" 全局变量 name = "jiahuai" 写完每一行JavaScript代码用;号隔 ...