Git安装和常用命令
Git是目前世界上最先进的分布式版本控制系统!!!
Git能自动帮我们记录每次文件的改动,还可以让同事协作编辑。
接下来,简单的介绍下Git的安装和常用命令:
Git安装:
1、Windows系统,进入Git官网下载相关操作系统版本的安装程序,官网网址:https://git-scm.com/downloads ,下载后,按默认选项安装即可。

完成安装后,再菜单栏选择Git 》Git Bash,跳出命令行窗口,就说明安装成功了;
安装完成后,还需要最后一步设置,再命令行输入:
$ git config --global user.name "输入用户名" (自定义)
$ git config --global user.email "输入email" (自定义)
2、Linux系统安装Git:
再Linux命令窗口,输入git,看看系统有没有安装:
$ git
The program 'git' is currently not installed. You can install it by typing:
sudo apt-get install git
上面告诉你没有安装Git,同时也告诉你如何安装Git。
如果你碰巧用Debian或Ubuntu Linux,通过一条sudo apt-get install git就可以直接完成Git的安装,非常简单。
3、Mac OS X上安装Git:
直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。
Git常用命令:
mkdir learngit 创建版本库,创建一个空目录

git init 把刚创建的库,变成git可以管理的库

vi test.txt 编辑文本内容 (Git只能编辑txt文本,word和操作系统自带的txt文本就不行。为什么不可以呢?因为格式存在二进制,因此版本控制系统无法跟踪文本的改动)

git add test.txt 文件添加到仓库 (警告提示,不用管,一般执行此命令后,不会出现任何提示信息的)

git commit -m “本次提交的说明” 文件提交到仓库

git status 让我们时刻掌握仓库当前状态,下面命令告诉我们test文本被修改了,但还没有提交。

git diff test.txt 能让我们看到, 具体修改的内容。

git log或git log --pretty=oneline ,返回的结果都是一样的,后者显示清晰,前者没用的内容显示比较多。

git reset --hard HEAD^ 回退到上一个版本,“^”回退到上一个版本,“^^”回退到上上个版本,如果是回退到10个版本,就写成git reset --hard HEAD~10。

执行成功后,最新版本“第二次添加”,已经看不到了,如果需要回退到“第二次添加”呢?如何回退?只要上面的命令行窗口没有被关闭,你就可以找到commit id是a870990e.....
执行:git reset --hard a870990e(commit id只要不存在相同的,就只输入前部分就可以了)

git reflog 用来记录每一次命令,比如:你回退到某个版本时,又关闭了命令行窗口,第二天又想恢复到之前的版本,找不到commit id怎么办?Git提供了reflog命令。

git checkout -- test.txt 撤销修改,有两种情况,一种:修改后还没有放在暂存区的,撤销修改就回到之前的版本;二种:已添加到暂存区的,(又作了修改),撤销后回到添加到暂存区后的状态;
git reset HEAD test.txt 撤销修改,已添加到暂存区的,还没有提交,撤销后回到工作区的状态
git rm test.txt 删除文件,再执行git commit -m 版本库中也被删除了
Git安装和常用命令的更多相关文章
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
- Git的一些常用命令
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 简单的说就是托管代码的便于多人开发的管理系统. 二.Git的一些命令,我详细的说一下 我是基于github给大家说一下git的一些常 ...
- ios开发环境配置及cordova安装与常用命令
一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...
- linux基础学习之软件安装以及常用命令
linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...
- Git Bash Here常用命令以及使用步骤
1.首先,要clone项目代码: git clone 链接地址 2.更新代码: git pull 3.添加修改过的文件.文件夹: git add 修改过的文件,文件夹 4.提交并注释: git com ...
- RabbitMQ入门教程(一):安装和常用命令
原文:RabbitMQ入门教程(一):安装和常用命令 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...
- 记录redis安装及常用命令
Redis安装及常用命令 一.安装 1.下载,解压,进入redis解压目录,make. make PREFIX=目录/redis install :安装到指定目录文件名为redis. 2.将解压目录里 ...
- 实验 1 Linux 系统的安装和常用命令
实验 1 Linux 系统的安装和常用命令 (题目) 一.实验目的 (1)掌握 Linux 虚拟机的安装方法.Spark 和 Hadoop 等大数据软件在 Linux 操作系统 上运行可以发挥最佳性能 ...
- git在windows及linux环境下安装及常用命令
git在windows下安装 下载地址:https://git-scm.com/ 默认安装即可 验证 git --version git在linux下安装 下载地址:https://mirrors.e ...
随机推荐
- python加密之hashlib
1.强大的hashlib,提供了用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 2.hmac模块实 ...
- 调用 SSPI 失败,请参见内部异常 解决方法
2017-11-12 12:49:53:706] OnServerConnectionAvailable error : System.Security.Authentication.Authenti ...
- AbstractIdleService
该类有一个startup和shutdown方法,启动此服务或者结束此服务的时候可以调用. Runtime.getRuntime().addShutdownHook(new Thread() {@Ove ...
- JMeter启动时显示Could not open/create prefs root node Software\JavaSoft\Prefs at root 0X80000002
在windows 7上启动jmeter时,提示错误: Java.util.prefs.WindowsPreferences <init> WARNING: Could not open/c ...
- Java知识点汇总
Java中泛型的本质 Java中静态变量的适用场景 Java类加载原理及类加载器 Java中对Clone的理解 Java中HashMap的实现 Java中Collection和Collections的 ...
- 【转】JMeter远程测试
详解JMeter远程测试(1) 如果运行JMeter客户端的机器性能不能满足测试需要,那么测试人员可以通过单个JMeter GUI客户端来控制多个远程JMeter服务器,以便对服务器进行压力测试,模拟 ...
- 1142 Maximal Clique
题意:给出一个图,定义这样一个结点子集subset,若subset中的任意两结点不都相邻,则称之为Not a Clique:若subset中的任意两结点都相邻,则称之为Clique:若subset中的 ...
- DNS 解析流程
DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工 ...
- C#泛型参数多线程与复杂参数多线程
背景:最近用多线程用的比较多自己走了一些弯路,分享出来希望大家少走弯路,C#中的多线程有两个重载,一个是不带参数的,一个是带参数的,但是即便是带参数的多线程也不支持泛型,这使得使用泛型参数多线程的时候 ...
- 获取Request.Form所有内容
string wwww = ""; for (int i = 0; i < Request.Form.Count; i++) { ...