『现学现忘』Git基础 — 22、Git中文件重命名
我们这篇文章来说说在Git中如何进行文件重命名。
提示一下,下面所说明的是对已经被Git管理的文件进行重命名,未被Git追踪的文件,直接修改文件名称就可以了。
1、用学过的命令进行文件重命名
(1)准备一个需要修改文件名的文件。
# 1.准备一个干净的Git仓库
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
No commits yet
nothing to commit (create/copy files and use "git add" to track)
# 2.创建一个文件
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ echo "hello git" > test.txt
# 3.添加文件到暂存区
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git add test.txt
warning: LF will be replaced by CRLF in test.txt.
The file will have its original line endings in your working directory
# 4.提交文件到本地版本库
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git commit -m 'add test.txt file'
[master (root-commit) 995fbbe] add test.txt file
1 file changed, 1 insertion(+)
create mode 100644 test.txt
(2)直接手动修改文件的名字。
# 1.查看工作目录中的文件状态
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
nothing to commit, working tree clean
# 2.手动修改文件名
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ mv test.txt readme.txt
# 3.再次查看工作目录中的文件状态
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: test.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
说明:上面显示test.txt文件被删除,新增未被追踪的文件readme.txt。
换句话说,上面信息的意思是,Git仓库中删除了一个文件,又新增了一个文件。
(3)把工作区的修改提交到暂存区。
# 1.提交工作区的中的修改
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git add ./
warning: LF will be replaced by CRLF in readme.txt.
The file will have its original line endings in your working directory
# 查看工作目录中的文件状态
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
renamed: test.txt -> readme.txt
我们可以看到Git还是很智能的,他通过你的操作,分析出你是在进行一个文件重命名的操作,所以在暂存区展示出来的状态是:renamed: test.txt -> readme.txt
说明:
上面执行git add ./命令,相当于执行了如下两条命令:
git rm test.txt:把test.txt文件从工作区删除。git add readme.txt:把readme.txt文件添加到暂存区。
(不信你试试,哈哈)
(4)最后进行提交操作,就完成了文件的重命名。
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git commit -m 'rename test.txt -> readme.txt'
[master fe20ce4] rename test.txt -> readme.txt
1 file changed, 0 insertions(+), 0 deletions(-)
rename test.txt => readme.txt (100%)
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
nothing to commit, working tree clean
2、使用git mv命令进行文件重命名
我们再把readme.txt文件重命名为test.txt。
这次直接使用git mv命令实现,一条命令就可以完成上面繁琐的文件重命名步骤,日常工作中就用该命令重命名文件。
# 1.重命名文件
# 前边是要重命名的文件,后边是要变更成的文件名。
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git mv readme.txt test.txt
# 2.查看工作目录中的文件状态
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
renamed: readme.txt -> test.txt
# 3.提交到本地版本库
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git commit -m 'rename readme.txt -> test.txt'
[master 92cf82d] rename readme.txt -> test.txt
1 file changed, 0 insertions(+), 0 deletions(-)
rename readme.txt => test.txt (100%)
可以看到非常简单就把文件进行了重命名。
其实运行git mv readme.txt test.txt命令就相当于运行了下面三条命令:
mv readme.txt test.txtgit rm readme.txtgit add test.txt
说明:文件重命名其实是一个很简单的操作,为什么花费一整篇的内容来讲解,主要是让大家慢慢习惯Git的工作方式。
『现学现忘』Git基础 — 22、Git中文件重命名的更多相关文章
- 『现学现忘』Docker基础 — 34、DockerFile文件详解
目录 1.DockerFile文件说明 2.Dockerfile构建过程解析 (1)Docker容器构建三步骤 (2)Dockerfile文件的基本结构 (3)Dockerfile注意事项 (4)Do ...
- 『现学现忘』Docker基础 — 22、使用Docker安装Nginx
目录 步骤1:搜索镜像 步骤2:下载Nginx镜像 步骤3:运行Nginx镜像 步骤4:进行本机测试 步骤5:进入容器内操作 步骤6:测试外网访问容器 步骤1:搜索镜像 使用docker search ...
- 『学了就忘』Linux基础命令 — 25、文件基本权限的管理
目录 1.文件和目录的默认权限 2.umask默认权限 (1)查看系统的umask权限 (2)用八进制数值显示umask权限 (3)umask权限的计算方法 (4)注意:umask默认权限的计算绝不是 ...
- 『学了就忘』Linux基础命令 — 20、文件操作的相关命令
目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...
- 『学了就忘』Linux基础命令 — 23、文件基本权限的介绍和作用
目录 1.基本权限的介绍 (1)权限位的含义 (2)权限的优先级 2.权限的基本作用 (1)权限含义的解释 (2)目录权限说明 1.基本权限的介绍 (1)权限位的含义 前面讲解ls命令时,我们已经知道 ...
- 『学了就忘』Linux基础命令 — 24、文件基本权限的相关命令
目录 1.chmod命令 2.权限模式 (1)用户身份. (2)赋予方式. (3)权限. 3.数字权限 4.文件常用权限 5.chown命令 6.chgrp命令 7.总结 常用基本权限操作命令: ch ...
- git 文件重命名
文件重命名 git mv old_name new_name git commit -m 'rename' git push origin master 删除文件 git rm filename
- git使用记录二: 给文件重命名的简单方法
git使用记录三: 给文件重命名的简单方法 git mv file_name_old file_name_new mv: 文件命名 file_name_old : 文件当前的名字 file_name_ ...
- 『现学现忘』Git基础 — 5、Git的协作模式
目录 1.分布式工作流程 2.集中式工作流 3.分支工作流 4.GitFlow 工作流(最流行) 5.Forking 工作流(偶尔使用) 6.总结 1.分布式工作流程 与传统的集中式版本控制系统(CV ...
随机推荐
- ConcurrentHashMap 的并发度是什么 ?
ConcurrentHashMap 的并发度就是 segment 的大小,默认为 16,这意味着最多同时可以有 16 条线程操作 ConcurrentHashMap,这也是ConcurrentHash ...
- AOP 有哪些实现方式?
实现 AOP 的技术,主要分为两大类: 静态代理 指使用 AOP 框架提供的命令进行编译,从而在编译阶段就可生成 AOP 代理类, 因此也称为编译时增强: 编译时编织(特殊编译器实现) 类加载时编织( ...
- 线程 B 怎么知道线程 A 修改了变量?
1.volatile 修饰变量 2.synchronized 修饰修改变量的方法 3.wait/notify 4.while 轮询
- pandas学习总结
什么是pandas pandas数据读取 03. Pandas数据结构 Pandas查询数据的几种方法
- 视觉SLAM十四讲:从理论到实践 两版 PDF和源码
视觉SLAM十四讲:从理论到实践 第一版电子版PDF 链接:https://pan.baidu.com/s/1SuuSpavo_fj7xqTYtgHBfw提取码:lr4t 源码github链接:htt ...
- MOS管防反接电路设计
转自嵌入式单片机之家公众号 问题的提出 电源反接,会给电路造成损坏,不过,电源反接是不可避免的.所以,我们就需要给电路中加入保护电路,达到即使接反电源,也不会损坏的目的 01二极管防反接 通常情况下直 ...
- 利用Charles做代理测试电脑上写的H5页面
做H5页面的同学可能经常会遇到一个场景,就是电脑上调试好的页面怎么在手机上访问测试呢? 下面就介绍一种自己经常使用的方式,利用Charles代理软件来实现! 安装Charles 直接去官网下载对应的系 ...
- Linux 0.11源码阅读笔记-总结
总结 Linux 0.11主要包含文件管理和进程管理两个部分.进程管理包括内存管理.进程管理.进程间通信模块.文件管理包含磁盘文件系统,打开文件内存数据.磁盘文件系统包括空闲磁盘块管理,文件数据块的管 ...
- Android去掉标题头
在AndroidManifest.xml文件中定义 <application android:theme="@android:style/Theme.NoTitleBar"& ...
- BootstrapBlazor实战 Tree树形控件使用(2)
继续上篇实战BootstrapBlazor树型控件Tree内容, 本篇主要讲解整合Freesql orm快速制作数据库后台维护页面 demo演示的是Sqlite驱动,FreeSql支持多种数据库,My ...