git是去中心化版本管理工具,项目创建一个远程版本,将其clone到本地,会在本地创建一个本地仓,一个开发项目,在没有网络的时候依然可以提交修改到本地仓,当有网络的时候再提交到远程仓库。git可以快速的创建分支以及切换分支。比svn创建分支快捷方便。

git 版本管理流程图

一般的git版本管理,会有三条主线(会与上图稍稍不同,主体一样),分别对应dev(开发环境)线,release(测试环境)线,master(生产环境)线。这三条线从左开始是一个项目从工程师开发----》测试人员测试---------》生产(正式环境)上线的项目流程。由这三条线分别衍生两种分支线

  feature branches: 在dev开发主线上,当需要修改或者增加新的需求的时候开一个分支,可以命名feature_bug_fix.当在这个分支开发完成,或者不需要这个分支的时候直接删除这个分支。好处:无用代码不会污染主分支,主分支线上个的的代码都是有用的代码。

  同样,release 和 master 线上的也可以创建开发分支。

现在github上面创建一个项目,复制项目的url地址

打开一个文件,输入git status 命令,发现fatal: Not a git repository (or any of the parent directories): .git 这个错误。输入 git init 初始化git

1.添加一个新的远程:git remote  add  <projectName>  <gitUrl>    projectName:项目名称  gitUrl 远程项目地址

  git remote -h :git 操作url的docs

  git remote -v :查看git远程仓

  git remote add  gitPro  :添加一个新的远程

 git remote :查看远程信息

2.git 创建分支

git branch:查看当前 远程是否有分支

git status:查看在那个分支开发

git checkout   -b <featureName> :创建分支

git checkout <featureName>:切换分支

git checkout :<featureName>: 删除分支

git merge <targetBranch>:将指定分支合并到当前分支

3.杂项

 1.git add 撤销 :git reset HEAD 撤销

 2.合并指定文件夹到某个分支:git checkout <branchName> <fileName>

 3.查看上次提交的日志:git log -p -n  n 代表次数

1.git更新某个文件夹的文件

找到要更新的文件夹-------->打开git bash here---->输入git fetch----->git merge

2.提交文件

  git add test.txt :将当前文件添加到本地仓进行管理。

  git commit -m "这是测试":将文件提交到本地仓,此时只是将文件提交到本地阿仓,并没有提交到远程仓库

  git push origin master: 将本地仓中未提交到远程仓库的文件提交到远程仓(版本控制服务器)

  

3.git 删除文件

  rm test.txt :表示从当前工作空间删除文件,并不会将本地分支删除,也不会将远程服务器删除

  若删错了文件,可以用 git checkout test.txt 从本地仓恢复

  若要真的删除,可以用 git rm test.txt 从本地仓库删除

  最后 git push origin master 将这个删除的文件提交到远程服务器

  若本地仓删除但是又想从远程仓抓取,用 git checkout HEAD -- test.txt   从远程仓抓取到本地仓和工作空间,此命令可以用作解决文件冲突

4.git查看远程仓库地址

  git remote -v:返还远程仓库地址

5.git 获取远程仓库项目

  git clone git地址:git地址是远程仓库的地址

6.查看上次提交的文件

   git  log -p -2

7.删除分支

  git branch -D <branchName>

  若报error: Cannot delete branch   则切换到其他分支再删除,你不能删除一个正在使用的分支

git介绍与使用的更多相关文章

  1. Git介绍及常用操作演示(一)--技术流ken

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  2. 第七章 : Git 介绍 (上)[Learn Android Studio 汉化教程]

    Learn Android Studio 汉化教程 [翻译]Git介绍 Git版本控制系统(VCS)快速成为Android应用程序开发以及常规的软件编程领域内的事实标准.有别于需要中心服务器支持的早期 ...

  3. 【转】Git介绍

    版本控制 说到版本控制,脑海里总会浮现大学毕业是写毕业论文的场景,你电脑上的毕业论文一定出现过这番景象! 毕业论文_初稿.doc 毕业论文_修改1.doc 毕业论文_修改2.doc 毕业论文_修改3. ...

  4. git介绍和常用指令

    Git介绍和常用指令 介绍:Git和SVN一样都是版本控制工具.不同的是Git是分布式的,SVN是集中式的.Git开始用可能感觉难点,等你用习惯了你就会觉得svn是有点恐怖.(如果一个项目有好多人一起 ...

  5. git介绍及安装

    git介绍 git是一个开源的分布式版本控制系统,用于敏捷高效的处理任何或大或小的项目.git是linus Torvalds为了帮助管理Linux内核开发的一个开放源码的版本控制软件. Git 与常用 ...

  6. CI 知识 :Git介绍及常用操作

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  7. Git介绍与简易搭建

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  8. Git介绍、安装、命令和实战

    一.Git介绍 Git是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. 二.Git安装(Mac系统) 在Git官网下载安装包双击直接安装 在终端输入git来检测Git ...

  9. git介绍-常用操作(一)

    Table of Contents 1  系列文章 2  git说明 3  git常用命令 3.1  基本操作 3.2  远程操作 4  查看git的配置 4.1  查看已配置项 4.2  其他配置 ...

  10. 版本控制工具Git介绍-01

    使用版本控制工具是为了方便团队开发,比如多人共同维护一个项目的时候,用版本控制工具可以很方便的维护项目代码,如果哪天你改了一个版本,出问题了,我们也可以很快的找到你改了什么,这里介绍使用比较多的版本控 ...

随机推荐

  1. jquery源码学习笔记一:总体结构

    练武不练功,到老一场空.计算机也一样. 计算机的功,就是原理.如果程序员只会使用各种函数,各种框架,而不知其原理,顶多熟练工人而已.知其然,更要知其所以然. jquery我们用得很爽,但它究竟咋实现的 ...

  2. JavaScript基础简要

    JavaScript   引用外部js :   <script src="2.js"type="text/javascript"></scri ...

  3. vsftp 777权限

    1. setsebool -P ftpd_disable_trans 1 2. service vsftpd restart

  4. 关于数论【polya计数法】

    可以预见数论推公式是有多么蛋疼. 让我简明扼要的讲讲吧(多都说不出来,毕竟才做了两道题)其实呢,这个算法应该归入群论,有个有用的东西:置换群,它表示一个集合包括很多的置换.先讲讲置换吧:↓(这是个置换 ...

  5. add environment path to powershell

    https://4sysops.com/archives/use-powershell-to-execute-an-exe/ https://stackoverflow.com/questions/7 ...

  6. Ural2102:Michael and Cryptography(数论&素数)

    The hacker Michael develops breakthrough password manager, which is called KEK (Keeper of Encrypted ...

  7. poj中的一些线段树

    poj2828 链接:http://poj.org/problem?id=2828 题解: 初始状态 首先是插入3 69 1,4结点有4个位置, 1,2结点有2个位置,小于3,因此放到1,4结点右孩子 ...

  8. apache-ab并发负载压力测试 不错

    ab -n 3000 -c 3000 http://www.test.com/ c 100 即:每次并发3000 个 n 10000 即: 共发送3000 个请求 ab -t 60 -c 100 ht ...

  9. JNI编程(一) —— 编写一个最简单的JNI程序(转载)

    转自:http://chnic.iteye.com/blog/198745 忙了好一段时间,总算得了几天的空闲.貌似很久没更新blog了,实在罪过.其实之前一直想把JNI的相关东西整理一下的,就从今天 ...

  10. mybatis基础学习4-插件生成器(根据数据库的表生成文件)

    1:安装(根据数据库的表生成文件) 2:在所建项目单击右键输入mybatis如下图 *建项目文件时不用建包和类,插件可以根据数据表自动生成,在配置文件(generatorConfig.xml)里写即可 ...