本文版权归cxun所有,如有转载请注明出处与本文链接,谢谢!
原文地址:http://www.cnblogs.com/cxun/p/5630190.html

git的功能很强大,但是其实很简单,用来用去都是这几个,这里总结一下,也方便自己日后查询。写得比较粗,没有一些大牛写得那么详细完整,但是作为入门的话,这几个命令应该够用了。

git官方下载地址:https://git-scm.com/

Windows中用的是git bash,按win键,输入git,会自动找出来的。如果安装的不是portable版本的话,在任意一个文件中按右键,点git bash也可以调出命令行界面。

以下的命令使用前提是git服务器已搭建好的情况,有关git服务器有很多,windows平台下我推荐gitblit,linux平台我推荐gitlab,有关服务器的搭建等有空的时候再总结,有需要的朋友可以先从这些服务器软件的官网里找。

下面2-3是下载代码用的,4-6是上传代码用的,当然上传代码也可以用图形界面方式来完成,git bash中输入“git gui”就可以调出来。

1. git status

查看现在代码库的状态,会将当前的代码与GIT代码库比较,如果有差别,要解决冲突才行。解决冲突的情况比较复杂,这里就暂时不讨论。假设现在想放弃当前的代码版本,希望将服务器上的版本完全覆盖到本地来的话,直接用下面这个命令“git checkout -f”。但前提是 git status 后不能有 Untracked files 的提示(表示有新的文件未被添加给GIT跟踪),直接用rm命令,比如提示信息是这样:

Untracked files:
(use "git add <file>..." to include in what will be committed) ProjectName/ModuleName/Form1.cs.bak
ProjectName/ModuleName/new.txt

分别复制这两行,执行:

rm ProjectName/ModuleName/Form1.cs.bak
rm ProjectName/ModuleName/new.txt

然后再执行一下 git status,没有 Untracked 提示的话,就可以执行 git checkout -f 了。

2. git checkout -f

这是重置当前代码,恢复到上一次提交或获取版本的那个状态,这状态是没有冲突的,就可以git pull了。

如果想查看以前版本的内容,可以通过gitk查询以前版本的hash值,可以取前8位,如“bad20cb3”,然后执行“git checkout bad20cb3”,此时代码版本已经变成以前的版本了,可以通过在资源管理器中查看各个文件的内容。

如果想回到最新版本,直接执行这个命令即可:“git checkout master”

3. git pull

从服务器获取所有历史版本的代码库,并把本地代码替换成最新版本的代码。
(没有经过设置的话需要执行:git pull origin master)

4. git add --all

把 git status 提示的 Untracked files 中的所有文件添加给GIT代码库跟踪。

5. git commit -a

把当前代码提交到本地代码库,执行后会出现一个版本说明的文本编辑界面(Linux超强大的文本编辑工具“VI”),按“i”,进入文本编辑状态,此时光标只能用键盘的上下左右移动,不支持鼠标。版本说明的规则是,第一行是提交版本的标题,然后回车空一行,在第3行开始,就是详细的版本说明了。
编辑完成后,按"ESC"返回到VI的命令模式,输入“:wq”,将保存所输入的版本说明,并退出VI。然后GIT就会将当前代码提交到本地代码库了。此时服务器上还没当前的代码版本,需要用git push来提交到服务器。

6. git push

只有commit过的代码库才能提交到服务器,输入git push回车后,没有出现报错信息的话就完成了代码上传服务器的工作了。
(没有经过设置的话需要执行:git push origin master)

7. gitk

用图形界面方式查看各个版本的信息,包括:提交时间、提交人、代码差别、版本摘要值等等。

git 常用命令粗略总结的更多相关文章

  1. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  2. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  3. Git 常用命令大全

    Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...

  4. Git常用命令总结

    Git常用命令总结 git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone ...

  5. GIT常用命令备忘

    Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...

  6. Git 常用命令2

    Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...

  7. git常用命令-基本操作

    git常用命令-基本操作 1)      新增文件 新增了Test_1.java git add Test_1.java git commit –m “新增了Test_1.java” git push ...

  8. 转收藏:Git常用命令速查表

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  9. git常用命令,git版本控制和Xcode结合使用,用Xcode提交到github,github客户端使用

    1.git常用命令 查看命令: 1.git --help 查看git所有命令 2.git clone -help 查看git clone命令的细节 3.git config -l   查看当前所有配置 ...

随机推荐

  1. 实现携程X分钟前有人预定功能

    实现携程X分钟前有人预定功能 原理:利用cookie与计时器两部分: 首先,进入页面,x会被随机数赋值,赋值后x会一分钟加1,直到加到60,再从1开始累加. 页面是否相同是根据页面的url后的id值判 ...

  2. shell在一个大文件找出想要的一段字符串操作技巧

    昨天端午,晚上的时候接了一个电话,我朋友的公司,数据库被两个工作没多久的phper给弄坏了,具体就是把一个字段值,给全表弄成一个了名字了,当然这个是可以配置了禁止全表更新数据库,这下可急坏了,找到我, ...

  3. Linux安装软件总结(二.几种安装命令介绍)

    一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...

  4. web前端~~浏览器兼容问题(百度)

    所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况.在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的 ...

  5. jpa语句报 org.springframework.dao.InvalidDataAccessApiUsageException: Parameter with that position [2] did not exist; nested exception is java.lang.IllegalArgumentException: Parameter with that position

    @Query("SELECT area from Area AS area WHERE area.state=0 AND area.name like %?1% ")Area fi ...

  6. Git 常用命令行

    最近在公司的服务器上安装了Git Sever,开始从SVN转向到Git了,整理了一些在Git常用的命令. 取得Git仓库 初始化一个版本仓库 git initClone远程版本库 git clone ...

  7. HTML基础篇之列表相关标签和特殊字符实体

    HTML字符实体 常用的字符实体: 实体字符 字符实体 大于号 (>) > 小于号 (<) < 引号 (") " 注册商标(®) ® 版权(© ) © &a ...

  8. 【整理】强化学习与MDP

    [入门,来自wiki] 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益.其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的 ...

  9. mysql performance_schema 和information_schema.tables了解

    这个是关于mysql的系统表,性能表,核心表操作的一些介绍,深入算不上 我们一般很少去动 mysql  information_schema 信息相关  performance_schema 性能相关 ...

  10. web项目存数据到数据库,中文乱码,解决过程

    first: 排查原因: 打断点,查看到底是在执行存数据库操作之前就已经乱码了,还是存数据库操作后乱码的. 前者解决方案: 在web.xml里面加上: <filter> <filte ...