常见的Git命令
最近想着需要把工作中做一个备份,除了本地保存之外,上传到码云是个不错的选择,除了Git的一些特点外,也可以让别人看到你的代码,共同修改之类的
首先在上传到码云之前,需要学习Git的一些基础教程,包括国外的GitHub也是,需要首先了解Git(分布式版本控制系统)相关
在这里放两个链接:廖雪峰的Git教程以及stormzhang在知乎专栏学习编程里写的从0开始学习GitHub系列之Git速成
本博客适合Windows下的git相关,Linux和Mac版本可以查看我上面放的廖雪峰的Git教程链接
首先下载Git,按照 廖雪峰的Git教程--安装Git完成安装和配置,创建自己的版本仓库
在这里对Git的常见命令做一些说明:
首先需要了解一个概念,Git将文件夹分成三个区,工作区(就是我们电脑工作的区域),缓存区(将文件add到仓库之前的一个缓存区),仓库(相当于Git帮我们存储文件的地方)
1 初始化Git仓库:
我们在安装完Git之后,打开任意一个文件夹的空白位置,单击右键,会出现git Gui here和git Bash here,选择Git Bash here,输入git init即可对本地的Git仓库初始化:
2 向Git仓库添加文件:
输入 git add + 需要上传的文件名以及文件类型即可
新建一个txt文本,命名为readme.txt
内容为:
i am doing something
i want to learn java
没有返回消息,套用Unix的一句话“没有消息就是好消息”,添加成功
3 文件提交
输入 git commit命令,最好在命令后面添加-m + 添加的主要内容:
值得一提的是,由于Git的机制,如果我们在提交之前不将需要提交的项目add到缓存区,则无法commit到版本库里
4 文件修改:
修改完文件之后按照2-3的顺序进行即可
5 查看文件状态
修改原来的文本文件为:
i am doing something
i want to learn java
i am handsome
输入git status命令,返回如下信息,告诉我们代码被修改过了。还没有被提交:
5 查看修改的文件内容
输入git diff + 需要查看的文件名称和文件类型,从下图可以看出,我先是删除了i want to learn java这句话,复原后又添加了i am handsome
6 查看历史记录
输入git log命令,返回修改的次数以及修改的一些摘要(就是我们-m 后面所写的内容)
7 回退命令
假如我觉得自己不够帅,向回退到之前的版本,则输入git reset --hard + 想要回退的版本号,在Git中,使用HEAD表示当前版本,往前一个版本就是HEAD^,依次类推,当前面版本过多的时候,写成HEAD~数字,这时候readme.txt文件倒退回了上一个版本:
i am doing something
i want to learn java
8 再回退到上一个版本:
回退到上一个版本之后,我们输入git log,发现之前我们修改的版本不见了
假如这时候我又觉得自己比较帅了,想恢复怎么办
在第六个命令时,有一个很长的那个commit id,可以根据这个id来再次回退到上一个版本:
输入指令git reset -- hard + commit id即可
输入cat readme.txt查看,果然,我又帅回来了
如果第二天关机之后忘记了commit,可以输入git reflog命令即可
9 删除/还原文件
当我们想删除文件时,用rm + 想删除的文件名,比如我想删除readme.txt文件
这时候我们查看状态,输入git status命令,可以看到我们删除了readme.txt文件
这个时候有两个选择,因为我们之前将文件提交到了仓库里面,想要删除文件可以使用git rm命令并且git commit提交,这时候就能从从版本库里面将readme.txt文件删除了
或者我们想还原文件,使用git checkout -- readme.txt命令即可,相当于将git仓库区的东西覆盖了工作区的东西,类似于一键还原
熟悉这9个常见命令,我们对Git有了一个大概的了解,可以做一些基本的操作
常见的Git命令的更多相关文章
- 常见的git命令和git->github错误
相关命令 git remote git remote add origin xxx (xxx为仓库链接) 给这个链接取一个名字,为origin git pull git pull <远程主机名& ...
- 工作常见的git命令
Git创建项目仓库: 1.git init 初始化 2.git remote add origin url 关联远程仓库 3.git pull 拉取远程仓库到本地 相当于(git fet ...
- 常见的 Git 命令:
开始一个工作区(参见:git help tutorial) clone 克隆一个仓库到一个新目录 init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库 在当前变更上工作(参见:git he ...
- 一天工作所用到的Git命令
一天工作所用到的Git命令 像大多数新手一样,我一开始是在网上搜索 Git 命令,然后把答案复制粘贴,并没有真正理解它们究竟做了什么. 后来我曾经想过:"如果有一个最常见的 Git 命令的列 ...
- Python 命令行之旅:使用 argparse 实现 git 命令
作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...
- 使用IDEA模拟git命令使用的常见场景
目录 使用IDEA模拟git命令使用的常见场景 前期准备 新建一个远程仓库 在一个文件夹内建立两个子文件夹作为两个本地仓库的存放位置 本地仓库与远程仓库建立联系 模拟两个用户协同开发的场景(使用IDE ...
- 一些常见的shell命令和git命令
shell命令: pwd : (Print Working Directory) 查看当前目录 cd (Change Directory) 切换目录,如 cd /etc ./当前目录 ../上级目录 ...
- 【转】Github轻松上手4-常用的git命令
转自:http://blog.sina.com.cn/s/blog_4b55f6860100zzih.html 附上一些git的常见命令: • git remote add origin git ...
- 需要熟记的git命令
需要熟记的github常用命令 总结一下ubuntu下github常用的命令,设置部分跳过,假设repository的名字叫hello-world: .创建一个新的repository: 先在gith ...
随机推荐
- mui 滑块开关 进度条 以及如何获取值
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- Python学习之旅(二十三)
Python基础知识(22):进程和线程(Ⅰ) 1.多进程 (1)fork Python的os模块封装了常见的系统调用,其中就包括fork,可以在Python程序中轻松创建子进程 fork可以在Mac ...
- Linux下一台服务器Redis主从复制(master-slave)配置
主从概念 ⼀个master可以拥有多个slave,⼀个slave⼜可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构 master用来写数据,slave用来读数据,经统计:网站的读写比率 ...
- Linux内核态用户态相关知识 & 相互通信
http://www.cnblogs.com/bakari/p/5520860.html 内核从本质上看是一种软件——控制计算机的硬件资源,并提供上层应用程序运行的环境. 系统调用是操作系统的最小功能 ...
- Django进阶之查询优化、extra注入SQL及批量创建
Django查询优化 Django的查询优化用到两个函数——select_related()和prefetch_related(). select_related()用的是连表join的方式,主要处理 ...
- python基础(13)-面向对象
类 类的定义和使用 # class Person: def __init__(self, name, age, gender): self.name = name self.age = age sel ...
- python 容器类型数据 (str list tuple set dict)
# ###容器类型数据(str list tuple set dict) var1 = "今天心情非常美丽" var2 = [1,2,3,4] var3 = ("黄将用& ...
- 8 . IO类-标准IO、文件IO、stringIO
8.1 IO类 #include <iostream> //标准IO头文件 8.2 文件输入输出流 #include <fstream> //读写文件头文件 std::fst ...
- 关于 vue 日期格式的过滤
最近也在写公司几个单独页面,数据量比较,让前端来做,还不让angular,jquery? no no no~ 对于一个前端来说绑数据那么麻烦的一款 “经典的老东西“ ,我才不用, SO~ vue ...
- 微信小程序获取用户手机号详解
最近在做一款微信小程序,需要获取用户手机号,具体步骤如下: 流程图: 1.首先,客户端调用wx.login,回调数据了包含jscode,用于获取openid(用户唯一标识)和sessionkey(会话 ...