1、安装完成后,设置用户信息:
$ git config --global user.name "wangfg"
$ git config --global user.email "wangfg@example.com"

2、创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
$ cd /F
$ mkdir learngit
$ cd learngit

3、通过git init命令把这个目录变成Git可以管理的仓库:
$ git init

4、git的常用命令

1)添加/修改:
$ git add readme.txt
$ git commit -m "wrote a readme file"

2)状态查看:(可以让我们时刻掌握仓库当前的状态,如:有没有准备提交的修改等。)
$ git status

3)查看具体修改内容:
$ git diff readme.txt

4)查看历史记录:
$ git log

如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:
$ git log --pretty=oneline

5)版本回退:(首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交,如:1094adb,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。)
如把当前版本回退到上一版本:
$ git reset --hard HEAD^

或者从上一版本返回最新版本:
$ git reset --hard 1094adb(最新版本id)

6)查看每一次操作命令以及版本号
$ git reflog

7)撤销修改
为使用git add时:
$ git checkout -- readme.txt
使用git add 后:
$ git reset HEAD readme.txt (先回退到当前版本)
$ git checkout -- readme.txt (再回退到工作区)

8)删除:
$ git rm readme.txt
$ git commit -m 'delete readme.txt file'

9)结合github创建远程仓库
第1步:创建SSH Key。
$ ssh-keygen -t rsa -C "youremail@example.com"
创建成功后在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

10)登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:
如输入:learngit,其他选择默认

11)创建远程仓库(origin 远程库的名字)
$ git remote add origin git@github.com:ap0810231/learngit.git

12)把本地库的所有内容推送到远程库上:
第一次:
$ git push -u origin master
此后可以使用命令:
$ git push origin master

13)从远程库克隆一个本地库:
$ git clone git@github.com:ap0810231/learngit.git

14)创建dev分支,然后切换到dev分支:
$ git checkout -b dev

或者使用
$ git branch dev 创建分支
$ git checkout dev 切换分支

15)用git branch命令查看当前所有分支:
$ git branch

16)合并指定分支到当前分支:
$ git merge dev

$ git merge --no-ff -m "merge with no-ff" dev
(备注:合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。)

17)删除分支
$ git branch -d dev

18)当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场:
当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是当前正在dev上进行的工作还没有提交:
可以使用git stash保存当前工作现场:
$ git stash
然后在master下创建分支bug-101:
$ git checkout master
$ git checkout -b bug-101
修复完bug-101的bug之后合并到master:
$ git merge -no-ff -m'fixed bug' bug-101
完成修复bug后回到之前工作现场:
$ git checkout dev
查看刚才的工作现场存到哪去了?用git stash list命令看看:
$ git stash list
用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
另一种方式是用git stash pop,恢复的同时把stash内容也删了:
$ git stash pop

19)查看远程库的信息
$ git remote

20)查看推送抓取路径
$ git remote -v

21)将本地分支推送到远程分支
$ git push origin dev

查看远程库信息,使用git remote -v;

本地新建的分支如果不推送到远程,对其他人就是不可见的;

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

git安装以及应用的更多相关文章

  1. CentOS 7 Git安装

    Git安装 yum -y install git 安装后,在srv目录下建立Git的目录. 初始化一个git空仓库 git init --bare project.git 增加用于访问git仓库的用户 ...

  2. Git安装

    前面说了很多废话,说得再好,还不如实践一次.要想使用Git,首先得安装.这次实验主要是实践怎样安装Git. 安装与检查是否安装成功 1. 在Linux(Ubuntu)上安装 上篇的Git简介已经介绍过 ...

  3. Git安装与配置

    一.简介 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  4. 版本管理之Git(二):Win7上Git安装及简单配置过程

    一.安装包 msysgit(Windows版本的Git) 下载地址:http://code.google.com/p/msysgit/downloads/list?q=full+installer+o ...

  5. git安装及命令使用和github网站

    最近参与别人的github项目时,学习了git的使用,首先需要在https://github.com/网站上注册账号和邮箱,然后fork一个开源项目,然后下载目前Windows下最新版本的git,下载 ...

  6. Git 安装

    安装参考资料: http://lzw.me/a/msysgit-tortoisegit-win-git.html http://blog.csdn.net/qwiwuqo/article/detail ...

  7. 转 git安装配置

    Win7上Git安装及配置过程 一.安装说明 1.Git在windows平台上安装说明. Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件 ...

  8. git学习1:git安装和配置

    Git是什么?世界上最先进的分布式版本控制系统,记录了一个文本文件的每次一修改信息,比如,一篇散文,从草稿到最终出版,经历过无数次修改,修改了标点符号形成一个版本,老师帮助修改形成一个版本,同学帮忙修 ...

  9. ubuntu下git安装及使用

    ubuntu下git安装及使用   其实,好几个月前,就已经安装好了,可是一直搁置在那儿,所以密码等一些其它细节都忘的差不多了,所以今天就重新部署了一下,并开始积极使用......... 1,git ...

  10. 分布式管理系统-git安装及配置

    安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功! 安装完成后,还需要最后一步设置,在命令行输入: $ git config - ...

随机推荐

  1. RestTemplate发送请求并携带header信息 RestTemplate post json格式带header信息

    原文地址:  http://www.cnblogs.com/hujunzheng/p/6018505.html RestTemplate发送请求并携带header信息   v1.使用restTempl ...

  2. 【转】Selenium - 封装WebDrivers (C#)

    本文转载自:http://www.cnblogs.com/qixue/p/3977135.html Web element仍然使用OpenQA.Selenium.IWebElement, 本类库将Se ...

  3. tmux终端工具的简单使用

    Linux上管理和运行进程除了程序级别的守护进程之外,经常用到的有比如nohup &的方式,以及screen会话的方式,而Tmux正是一个非常优秀的终端进程管理的软件,和GNU screen类 ...

  4. double compare 0

    因为double类型或float类型都是有精度的,其实都是取的近似值,所以有个误差.和一个很小的数比如0.00000001(1e-8)比较就是为了在这个误差范围内进行比较. 举个例子如double b ...

  5. centos7下使用mysql离线安装包安装mysql5.7

    服务器环境: centos7 x64 需要安装mysql5.7+ 一.卸载CentOS7系统自带mariadb # 查看系统自带的Mariadb [root@CDH-141 ~]# rpm -qa|g ...

  6. EAS开发报错 :数据库表 或 视图 不存在

      一:原因分析     建模之后,发布数据时未能及时在数据库创建相应的表格或视图.   二:解决办法     建模视图下——右键模型——更新数据库.   三:名称字段.描述字段在数据库里的存储格式 ...

  7. NOIP2012 普及组 寻宝

    题目描述 Description 传说很遥远的藏宝楼顶层藏着诱人的宝藏.小明历尽千辛万苦终于找到传说中的这个藏宝楼,藏宝楼的门口竖着一个木板,上面写有几个大字:寻宝说明书.说明书的内容如下: 藏宝楼共 ...

  8. 通过js实现整屏滑动+全屏翻页+动画展示+线性图

    技术:html+css+jquery+jquery-ui.js+jquery.fullPage.js   概述 本demo主要通过html+css+js实现整屏滑动,全屏翻页并带动画的功能效果,借助于 ...

  9. 通过apicloud实现的混合开发App的Demo

    技术:html+css+js+apicloud封装的api   概述 本Demo主要基本的HTML+CSS+JS实现的混合App,通过第三方平台apicloud主要页面有首页资讯+商城,目前数据都是静 ...

  10. JVM类加载机制与反射-转

    一.Java类加载机制 1.概述 Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允 ...