本文版权归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. marquee-:模拟弹幕

              marquee:基本已被弃用!!1 可以模拟弹幕效果           1.方向:direction             up  right   left  down     ...

  2. MySQL函数操作数据库

    1.select语句查询信息(实现模糊查询) <form name="form1" method="post" action=""&g ...

  3. 问题(the question)

    I want to know: 1. 软件开发最主要的目的 是什么? 2. 软件开发是否同样需要模,和架构? 3.软件开发与其他程序的需求分析是否相似,有什么不同之处? 4.软件开发最常用的计算机语言 ...

  4. sql语句 之聚合函数

      聚合分析 在访问数据库时,经常需要对表中的某列数据进行统计分析,如求其最大值.最小值.平均值等.所有这些针对表中一列或者多列数据的分析就称为聚合分析. 在SQL中,可以使用聚合函数快速实现数据的聚 ...

  5. python的编码规范【摘】

    模块名:小写字母,单词之间用_分割ad_stats.py 包名:和模块名一样 类名:单词首字母大写AdStatsConfigUtil 全局变量名(类变量,在java中相当于static变量):大写字母 ...

  6. C语言末

    最后一篇C语言的随笔啦,今天考试,感觉脑袋里一片空白,好像失忆了一样,但是不管怎么说,反正已经考完试了,成绩的好坏只能说明你以前的学习情况,不能预测你下一阶段的学习,不管考的怎么样,都已经过去了,考试 ...

  7. asp.net identity 2.2.0 在WebForm下的角色启用和基本使用(三)

    角色管理功能: 界面部分: <%@ Page Title="" Language="C#" MasterPageFile="~/Site.mas ...

  8. 后台进程管理supervisor

    一.安装 该工具是python的一个软件包,需要安装python及其python-setuptools 二.安装完后会在python的bin目录下找到对应的命令文件 三.安装supervisor为服务 ...

  9. Thinking in Java——笔记(13)

    Strings Immutable Strings Objects of the String class are immutable. Every method in the class that ...

  10. javascript立即执行函数

    javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花;当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解.  ( ...