递归删除指定目录下的.git文件

这篇博客介绍了如何在Linux中使用find和xargs命令递归删除指定目录下的.git文件。通过`find . -name .git | xargs rm -fr`命令实现,同时讲解了xargs的基本用法和find命令的选项,如-type用于指定搜索目标类型。还提到了在OS X系统中xargs的使用方式,以及ln命令的软链接和硬链接的区别,以及zip命令的加密和文件重命名的命令。
摘要由CSDN通过智能技术生成

原文链接:http://my.oschina.net/armsky/blog/34447

find . -name .git | xargs rm -fr

其中对 xargs 的介绍,可以参照以下内容:

大多数 Linux 命令都会产生输出:

文件列表、字符串列表等。但如果要使用其他某个命令并将前一个命令的输出作为参数该怎么办?

例如,file 命令显示文件类型(可执行文件、ascii 文本等);

你能处理输出,使其仅显示文件名,目前你希望将这些名称传递给 ls -l 命令以查看时间戳记。

xargs 命令就是用来完成此项工作的。他允许你对输出执行其他某些命令。

记住下面这些来自于第 1 部分中的语法:

例1:

file -Lz * | grep ASCII | cut -d":" -f1 | xargs ls -ltr

例2:

ls | xargs -t -i mv {} {}.bak

-i 选项告诉 xargs 用每项的名称替换 {}。-t 选项指示 xargs 先打印命令,然后再执行。

另一个非常有用的操作是当你使用 vi 打开要编辑的文件时:

例3:

file * | grep ASCII | cut -d":" -f1 | xargs vi


2013.0907.1220 更新

OS X 系统下 xargs 不能使用 -i 作为参数,可采用类似如下的命令来代替:

find

### 回答1: 在git中,有两种方法可以指定文件不提交。 第一种方法是使用`.gitignore`文件。这个文件可以用来指定哪些文件文件夹不需要提交到版本控制系统中。可以在`.gitignore`文件中列出不需要提交的文件文件夹的名称或模式,git会根据这些规则来判断哪些文件不需要被提交。`.gitignore`文件可以放置在项目的根目录下,也可以放置在子目录中,它们具有递归性,会自动生效。 第二种方法是使用`git update-index`命令。可以使用`git update-index --assume-unchanged <file>`命令来指定某个文件不提交。这条命令将设置一个临时位标记,告诉git这个文件在下一次提交中应该被忽略。如果想要重新跟踪这个文件,可以使用`git update-index --no-assume-unchanged <file>`命令来移除这个位标记。 需要注意的是,`git update-index`命令只会作用于本地仓库,不会修改其他人的仓库。所以如果希望其他人也不提交某个文件,需要在共享仓库中设置相应的`.gitignore`文件,或者进行代码审查等等其他措施来确保这些文件不会被提交。 ### 回答2: 在Git中,我们可以通过以下几种方法来指定文件不提交: 1. .gitignore文件:创建一个名为“.gitignore”的文件,并在其中列出不需要提交的文件文件夹的名称。每一行表示一个文件文件夹,使用通配符来指定一类文件。例如,为了忽略所有以“.txt”结尾的文件,可以在“.gitignore”文件中添加“*.txt”。git在提交时会自动忽略这些文件。 2. git update-index命令:可以使用git update-index命令来指定一个或多个文件不被Git追踪和提交。命令的使用方法为:“git update-index --assume-unchanged <file>”,其中<file>为需要忽略的文件名。这个命令会将文件的“已修改标记”设置为“已忽略”,使得Git不再追踪这些文件的变化。 3. .git/info/exclude文件:与.gitignore文件类似,.git/info/exclude文件是一个只能在本地有效的文件。它也可以用来指定不需要提交的文件文件夹,但是不会被Git版本控制。在这个文件中添加的规则将只适用于当前的仓库。 需要注意的是,这些方法只是让Git不追踪和提交指定文件,但是并不会从仓库中删除这些文件。如果要删除仓库中的文件,需要使用git rm命令。 总结起来,通过.gitignore文件git update-index命令和.git/info/exclude文件,我们可以方便地指定哪些文件不需要提交到Git仓库中,以满足项目开发中不同文件的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值