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. C# Windows服务创建安装卸载

    一.创建Windows服务 使用VS创建一个新的windows服务应用程序 创建完成之后 二.相关配置 修改Service1名称为StartService(可以不改,自行选择) 添加安装程序并修改配置 ...

  2. 9.27 csp-s模拟测试53 u+v+w

    T1 u 拿到题感觉他很水,但到死没想到正解,只会骗部分分(我太弱了) 考虑用两个差分数组维护,不同的是最后更新答案是$a[i][j]+=a[i-1][j-1]$,首先考虑在斜着加的起点,就是竖着的直 ...

  3. 1+x证书Web前端开发CSS3详细教程

    web 前端开发之 CSS3 新特性 http://blog.zh66.club/index.php/archives/189/ web 前端开发之 html5 新特性 http://blog.zh6 ...

  4. 未初始化内存检测(MSan)

    https://github.com/google/sanitizers/wiki https://github.com/google/sanitizers/wiki/MemorySanitizer ...

  5. python threading ThreadPoolExecutor源码解析

    future: 未来对象,或task的返回容器 1. 当submit后: def submit(self, fn, *args, **kwargs): with self._shutdown_lock ...

  6. MySQL for OPS 08:MHA 高可用

    写在前面的话 主从架构在一般情况下只能满足我们小公司业务并非一刻都不能中断服务.但是对于大型公司而言,对然数据丢失,数据库挂了,我们可以通过技术找回,修复.但是其中修复过程所消耗的时间是不被允许的.此 ...

  7. EF导航属性会自动从已查出来的对象附加

    如果新增对象导航属性对应的Id有值,其相应的导航属性会自动在内存中查找,如果存在会自动附加上去. public virtual void UpdateMaterialPurchaseOrderItem ...

  8. C 内置函数

    *) strcat()用于连接两个字符串 *) 函数 memcpy() 用来复制内存到另一个位置.

  9. 4-consul HTTP API及实践

    其他参考:https://www.cnblogs.com/duanxz/p/9660766.html 原文:https://www.douban.com/note/629645759/ 注意:使用AP ...

  10. Appium基于PO模型的自动化测试(Python)

    基于python单元测试框架unittest完成appium自动化测试,生成基于html可视化测试报告 代码示例: #利用unittest并生成测试报告 class Appium_test(unitt ...