1. 本地库初始化

进入指定目录,如:D:\gitSpace\OA

右键-->Git Bash Here,执行命令:

git init

效果如下:

#查看.git目录
ls -la
# 进入.git目录
cd .git
# 查看目录下的文件
ls -l

注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改。 

2. 设置签名

作用:区分不同开发人员的身份

注意:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系。

(1) 项目级别/仓库级别:仅在当前本地库范围内有效

git config user.name linhw
git config user.email panda@126.com

信息保存在:.git/config下

(2) 系统用户级别:登录当前操作系统的用户范围

git config --global user.name linhw
git config --global user.email panda@126.com
信息保存位置:~/.gitconfig 文件
 
级别优先级:
  • 就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名
  • 如果只有系统用户级别的签名,就以系统用户级别的签名为准
  • 二者都没有不允许
3. 基本操作
(1) 状态查看
# 查看工作区、暂存区状态
git status

(2) 添加
# 将工作区的"新建/修改"添加到暂存区
# 只有新增的文件需要添加到版本控制中,以后进行修改的可以直接提交
git add [file name]

(3) 提交

# 将暂存区的内容提交到本地库
git commit -m "commit message" [file name]

(4) 查看历史记录

创建一个test.txt文件,并提交

touch test.txt
git add test.txt
# -m 提交备注:commit message,可以任意
git commit -m "commit message" test.txt

查看历史记录

# 第一种查看方式
git log
多屏显示控制方式:
  • 空格向下翻页
  • b 向上翻页
  • q 退出
# 第二种查看方式
git log --pretty=oneline

# 第三种查看方式
git log --oneline

# 第四种查看方式
git reflog

HEAD@{移动到当前版本需要多少步}

(5) 前进后退

# 基于索引值操作[推荐]
# git reset --hard [局部索引值]
git reset --hard 193120d # 使用^符号:只能后退
# 注:一个^表示后退一步,n 个表示后退 n 步
git reset --hard HEAD^ # 使用~符号:只能后退
# 注:表示后退 n 步
git reset --hard HEAD~n

(6) reset 命令的三个参数对比

--soft 参数:仅仅在本地库移动 HEAD 指针
--mixed 参数:在本地库移动 HEAD 指针、重置暂存区
--hard 参数:在本地库移动 HEAD 指针、重置暂存区、重置工作区
 
(7) 删除文件并找回
删除文件:
# 删除文件
rm test.txt
# 添加到暂存区
giv add test.txt
# 提交到本地库
git commit -m "remove test.txt" test.txt
找回文件:
前提:删除前,文件存在时的状态提交到了本地库。
命令:git reset --hard [指针位置]
  • 删除操作已经提交到本地库:指针位置指向历史记录
  • 删除操作尚未提交到本地库(即在暂存区):指针位置使用 HEAD
(8) 比较文件差异
git diff [文件名]
  将工作区中的文件和暂存区进行比较 
git diff [本地库中历史版本] [文件名]
  将工作区中的文件和本地库历史记录比较
不带文件名比较多个文件

Git命令行操作(三)的更多相关文章

  1. windows下使用TortoiseGit代替Git命令行操作

    windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...

  2. 3.Git 命令行操作

    1.Git 命令行操作(本地库操作): 1.1. 创建本地库(本地库初始化): 第一步:首先在D盘建了个名为git空文件夹,命令行中cd到这个文件夹: 第二步:通过git init命令把这个目录变成G ...

  3. git 命令行操作(之前整理在有道的笔记)

    1. 常用命令 切换分支 git checkout [branch_name] 检出分支 git clone [git_URL] 更新分支 git pull origin [branch_name] ...

  4. GIT → 05:Git命令行操作

    5.1 打开命令行窗口 安装Git后,在资源管理器的空白处,单击鼠标右键打开窗口,点击 Git Bash Here ,打开Git命令行窗口,在窗口中可直接使用Linux命令操作: 5.2 初始化Git ...

  5. git 命令行操作

    Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 这里说一下在命令行对git进行操作 git init [在本地初始化一个git库] //当你的git服务器里面已经有文 ...

  6. git命令行操作

    从本地上传代码到仓库(假设已经建好仓库): 1.初始化: git init 2.将所有文件加入缓存区: git add * 3.提交当前工作空间的修改内容: git commit -m 'commit ...

  7. git命令行操作详解

    目录 1.常用操作 1.1 新建代码库 1.2 配置 1.3 remote管理 1.4 添加和撤销操作 1.5 代码提交 1.6 分支操作 1.7 查看信息 1.8 pull操作 1.9 push操作 ...

  8. 2. git命令行操作之本地库操作

    2.1 本地库初始化 git init 命令 用于创建一个空的Git本地仓库或重新初始化一个现有本地仓库 注:.git目录中存放的是本地库相关的子目录和文件,不要删除也不要随意修改 git confi ...

  9. git 命令行(三)-删除文件

    在Git中,删除也是一个修改操作,我们实战一下,有一个多余的文件:src/common/Util2.js 我们需要删除这个文件, 一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用 rm命令 ...

随机推荐

  1. 【转】struts2的ActionInvocation分析(action调度者)

    一个ActionInvocation实例代表一个action的执行状态,持有拦截器和将要执行的action的实例. defaultActionInvocation是其默认实现.下面是定义在该类中的部分 ...

  2. 生成git的SSH公钥

    1.右键,点击  git bash here 2.安装成功后设置用户和邮箱git config --global user.name "name"git config --glob ...

  3. Laravel5 --- QQ邮箱发送邮件

    1. 在此之前先确认QQ邮箱是否开启了POP3/SMTP服务,如果未开启则须开启 QQ邮箱->设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalD ...

  4. 纯CSS打造BiliBili样式博客主题

    前言 一直以来,我都在思考如何减少不必要的JS代码,仅通过CSS来实现博客园主题美化.CSS有很多魔法代码,例如:before,iconfont,order,等等,利用好这些技巧,也能实现很好美化效果 ...

  5. C++中enum(转载)

    原文地址:http://www.cnblogs.com/ForFreeDom/archive/2012/03/22/2412055.html 1.为什么要用enum       写程序时,我们常常需要 ...

  6. cURL error 60: SSL certificate problem: unable to get local issuer certificate(转)【亲测】

    php5.6以上的版本会出现这种问题 解决办法: [开启拓展] extension=curl extension=openssl [配置证书] 访问https://curl.haxx.se/docs/ ...

  7. SSM整合教程

    接着一直next下去 创建各个目录 pom.xml文件中引入各种包 <?xml version="1.0" encoding="UTF-8"?> & ...

  8. sso单点登录的入门(Session跨域、Spring-Session共享)

    1.单点登录,就是多系统,单一位置登录,实现多系统同时登录的一种技术.单点登录一般是用于互相授信的系统,实现单一位置登录,全系统有效的. 区分与三方登录(第三方登录) ,三方登录:某系统,使用其他系统 ...

  9. 【C#夯实】我与接口二三事:IEnumerable、IQueryable 与 LINQ

    序 学生时期,有过小组作业,当时分工一人做那么两三个页面,然而在前端差不多的时候,我和另一个同学发生了争执.当时用的是简单的三层架构(DLL.BLL.UI),我个人觉得各写各的吧,到时候合并,而他觉得 ...

  10. Linux目录和文件——查询目录和文件的命令

    Linux目录和文件——查询目录和文件的命令 摘要:本文主要学习了在Linux系统中是如何查询目录和文件的. which命令 which命令是根据PATH环境变量设置的路径,去搜索执行文件. 基本语法 ...