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的使用小结的更多相关文章

  1. Git 的BUG小结

    Git 的BUG小结 Git 在push的时候出现了: fatal: The remote end hung up unexpectedly 在网上找了非常多  发现出现了下面错误提示也可能是同样的问 ...

  2. SVN和Git代码管理小结

    SVN和Git代码管理小结  之前,先用的是SVN,后来用了Git,最近又在用SVN.  关于代码管理,写几句.    由于自己参与的项目,人通常不超过10个人,版本不是很多,协作比较正常,感觉SVN ...

  3. git submodule 使用小结

    git submodule 使用小结 原文链接 http://blog.gezhiqiang.com/2017/03/08/git-submodule/###### Git Submodule 允许一 ...

  4. 转:Git: git stash 用法小结

    一.应用场景 综合下网上的介绍和资料, git stash (git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑  ...

  5. Git工具使用小结

    昨天开始看一套java接口自动化的视频,今天看到的一章是关于git这个工具使用的,上大学那会用过svn作为版本管理工具,包括现在所在的公司,用的也还是svn进行管理.其实老早就听闻过Git,Githu ...

  6. git帮助和小结

    获取帮助 想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,方法有三: $ git help <verb> $ git <verb> --help $ man git ...

  7. git知识简单小结

    git特点: 1)分布式 2)存储快照而非差异 3)本地有完全的版本库,几乎所有操作都在本地 4)有内在的一致性,SHA1 5)优秀的分支管理 6)支持各种协同模式 7)开源,有一些第三方软件可整合使 ...

  8. git 常规使用小结

    总结下 git 的常规使用: 一般我们使用 git 来维护项目代码. 前提背景: 远程服务器上代码库,包含分支: 1.master - 版本发布分支 2.dev - 平时开发用的分支 一般操作流程: ...

  9. Git+GitHub 使用小结

    1.Git安装完成后需要做的配置            $ git config --global user.name "Your Name"        $ git confi ...

  10. Git命令使用小结

    一.上传你的代码的基本方式 0.在github网站上登录你的账户cynthiawupore,然后新建一个仓库demo 1.初始化 $ git init 2.添加文件夹下所有文件到仓库 $ git ad ...

随机推荐

  1. UVALive 5031 Graph and Queries (Treap)

    删除边的操作不容易实现,那么就先离线然后逆序来做. 逆序就变成了合并,用并存集判断连通,用Treap树来维护一个连通分量里的名次. Treap = Tree + Heap.用一个随机的优先级来平衡搜索 ...

  2. UVA 1152 4 Values Whose Sum is Zero 和为0的4个值 (中途相遇)

    摘要:中途相遇.对比map,快排+二分查找,Hash效率. n是4000的级别,直接O(n^4)肯定超,所以中途相遇法,O(n^2)的时间枚举其中两个的和,O(n^2)的时间枚举其他两个的和的相反数, ...

  3. Centos7.3 安装devstack stein版本

    1. 系统准备 # 关闭防火墙 systemctl stop firewalld systemctl disable firewalld # 关闭selinux setenforce 0 sed -i ...

  4. opensuse 15.0 安装ctdb

    问题 1 2019/05/20 15:27:14.574363 ctdb-eventd[26329]: 60.nfs: /etc/ctdb/nfs-linux-kernel-callout: line ...

  5. Bootstrap 徽章(Badges)

    本章将讲解Bootstrap徽章(Badges),徽章与标签相似,主要的区别是徽章的圆角比较圆滑. 徽章(Badges)主要用于突出显示新的或未读的项,如果使用徽章,只需要把<span clas ...

  6. SQL学习总结笔记

    SQL语句的效率不仅是sql语句的设计还有一些其他的原因比如网络 .是否有视图.是否有索引等等.这里主要描述的是我个人对于sql设计方面优化的一些见解: 首先要说明一下的是数据库SQL解析顺序: (1 ...

  7. Android深度探索总结

    Android深度探索前四章总结 通过这几章的学习真实体会到“移植”的概念:为特定设备定制Android的过程,但是移植的过程中开发最多的就是支持各种硬件设备的Linux驱动程序,本章对Android ...

  8. DNS 工作原理是什么,域名劫持、域名欺骗、域名污染又是什么

    DNS 工作原理是什么,域名劫持.域名欺骗.域名污染又是什么 2014年11月27日 10:05:40 阅读数:6726 标签: dns网络互联网顶级域名递归 更多 个人分类: 网络学习   一.DN ...

  9. 使用apache benchmark(ab) 测试报错: apr_socket_recv: Connection timed out (110)

    使用ab( apache benchmark )测试的时候,使用如下命令: ab -n 15000 -c 200   http://localhost/abc/abc.php 执行操作一定条数,或连续 ...

  10. 一个form表单对应多个submit

    一个form表单多个submit 在平时项目开发过程中,经常会遇到一个form表单对应多个submit提交的情况,那么 ,这种情况应该怎么解决呢,也很简单,这时候就不能用submit来提交了,可以通过 ...