`
songkang666
  • 浏览: 105583 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Git step by step 7 之git mv

    博客分类:
  • GIT
 
阅读更多
一、基本介绍
git mv 移动或重命名一个文件、目录或软链接
命令格式为
git mv <source> <destination>
git mv <source>... <destination directory>


这里有个待解决的问题:
假设工作目录、暂存区以及本地数据目录中有一个file,我们为file想到了一个更好的名字——newfile,并进行了以下操作
mv file newfile

那么在工作目录中file变成了newfile,暂存区中还为原来的file。这种情况下该如何解决?

目前想到的方法是先
git rm file

目的是不再跟踪这个file,然后再
git add newfile

使得跟踪newfile。
如果不做第一步,只做了第二步,那么在暂存区中会同时有file以及newfile,即git跟踪了file以及newfile,那么进行commit时,它两都会被加入数据目录中。

所以个人觉得,要是进行mv操作时,一定要加上git,即
git mv XXX XXX

以防止遗忘了这个操作,使得版本库中出现冗余的文件或目录。

内容扩展:
这里提到了“跟踪”这个术语,解释一下:
在工作目录中新建一个文件时,它处于未被跟踪状态,一旦执行了git add之后,这个文件即被提交到了暂存区,那么它也就处于了被跟踪状态。
只有被跟踪的文件才能被commit,在进行git commit操作时,所有被跟踪的文件都会被放入本地数据目录。
这句话想强调的是,只有被放入了暂存区的文件才是被跟踪的文件,这些文件才可以被提交到本地数据目录中,那些从暂存区中删除掉了文件即被解除了跟踪,在进行提交时,即使之前的本地数据目录中有那些文件,在提交之后,这些文件将不再存在于本地数据目录中。


more:
man git mv
《pro git》
分享到:
评论

相关推荐

    Git Learn Version Control with Git A step-by-step Ultimate beginners Guide epub

    Git Learn Version Control with Git A step-by-step Ultimate beginners Guide 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Git Learn Version Control with Git A step-by-step Ultimate beginners 无水印pdf

    Git Learn Version Control with Git A step-by-step Ultimate beginners Guide 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn...

    Learn Version Control With Git A step-by-step course for the complete beginner

    Learn Version Control With Git A step-by-step course for the complete beginner(中文)。亚马逊接近满分书籍,中文版。图文并茂。学习Git的好资料。 从官网一页一页的复制过来的,花了不少时间。

    Git Learn Version Control with Git A step-by-step Ultimate beginners Guide azw3

    Git Learn Version Control with Git A step-by-step Ultimate beginners Guide 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Learn Version Control with Git: A step-by-step course for the complete

    "Learn Version Control with Git" is a beginner-friendly step-by-step course. The book doesn't require a deep technical background. Instead, it's aimed at beginners of version control and/or ...

    Visual CSharp Step By Step

    《Visual C# Step By Step》是一本经典的C#编程教程,旨在帮助初学者逐步掌握C#语言和.NET Framework的核心概念与应用。这本书通过实例和逐步指导的方式,让读者能够深入理解C#编程的基础以及高级特性。 1. **C#...

    GIT分支代码统计

    在IT行业中,版本控制工具Git是开发者们进行协作和管理代码的重要工具。Git不仅提供了版本回溯、合并分支等基本功能,还支持各种高级操作,如代码统计。本主题聚焦于"Git分支代码统计",这是一项对于项目管理和团队...

    Git GUI.pptx

    git图形化界面操作说明,从创建本地仓库到更新远程仓库,step by step 简单直观。zsbd

    Git.Mastering.Version.Control.pdf

    Its step-by-step approach with useful information makes this course the ultimate guide to understanding and mastering Git. This course will show the road to mastery example by example, while also ...

    Git-2.21.0-64-bit.zip

    * The "git log" command by default behaves as if the --mailmap option was given. UI, Workflows & Features * The "git fast-export/import" pair has been taught to handle commits with log messages...

    python如何绑定git

    Step 1: git 用户绑定邮箱 首先,需要将 Git 账号绑定到邮箱上。登录 Git 网站,按照以下步骤操作: 1. 使用邮箱与 Git 绑定。 2. 本地配置个人用户名称和电子邮件地址: ``` git config --global user.name "信笺...

    jenkins的git插件

    - **git(4).hpi**:这可能是 Git 插件的多个版本之一,用于确保 Jenkins 支持最新的 Git 特性。 - **workflow-api.hpi**:流水线 API 插件提供了编写 Jenkinsfile 的接口,使得定义复杂的构建流程成为可能。 - **...

    搭建Git本地服务器详细步骤

    Step 7: 查看 Git 服务器的状态 将文件添加到工作区后,需要查看 Git 服务器的状态。可以使用以下命令: ``` git status ``` Step 8: 将文件提交到本地服务器 现在,需要将文件提交到本地服务器。可以使用以下命令...

    Step7高级编程西门子内部课程

    课程会指导如何有效管理Step7项目,使用版本控制系统如SVN或Git进行代码管理。 7. **性能优化**:通过合理的程序设计和优化,可以提高PLC的运行效率。课程会讲解如何减少CPU占用,优化循环时间和避免不必要的数据...

    天嵌科技出品-Linux移植之Step By Step_V4.5_20100605

    《天嵌科技出品-Linux移植之Step By Step_V4.5_20100605》是一份详尽的教程,旨在指导用户如何在天嵌科技的TQ2410平台上进行Linux系统的移植工作。TQ2410是一款基于Samsung ARM9处理器的嵌入式开发板,广泛应用于...

    Jenkins离线安装svn git maven插件包

    Jenkins离线安装svn git maven插件包 ,包含了依赖顺序,方便安装。 plugins: 1.structs.hpi 10.mailer.hpi 11.apache-httpcomponents-... 7.workflow-scm-step.hpi 8.subversion.hpi 9.display-url-api.hpi

    初识Git&Gerrit.pptx

    初识 Git&Gerrit ...7. Git 的分支管理 Git 的分支管理是 Git 的一个重要特性,分支是用来将特性开发与主干绝缘的。Git 的分支管理可以通过 `git branch` 命令来创建分支,通过 `git checkout` 命令来切换分支。

Global site tag (gtag.js) - Google Analytics