用例示例:
我有一个用例,我使用它克隆 Android Studio 项目git clone <urL>
,克隆后我从 repo 中获取包括.idea
文件夹在内的所有文件夹。
此.idea
文件夹位于repositoryName/.idea
git 克隆后生成的
此.idea
文件夹对我的用例没有用,大多数时候我必须删除它才能将项目导入Android Studio,否则会显示错误。
预期结果:
我期望有一个命令可以执行此操作:
克隆 GitHub 仓库并自动删除repositoryName/.idea
文件夹。
解决方案可以基于 Windows 或 Linux。
答案1
使用 powershell,您可以克隆目录,然后按创建日期将 CD 放入最新目录(假设它是新的),然后删除 .idea 文件夹。假设您在 C:\projects 中,从那里启动并运行 git clone:
git clone url
$folder = gci | ? { $_.PSIsContainer } | sort CreationTime -desc | select -f 1
cd $folder
Remove-Item .idea
第二条命令自动将 $folder 的值分配给最近创建的文件夹的路径。(可能是新的项目文件夹,因为您刚刚使用 git clone 命令创建了它)
答案2
解决方案:
脚本<url>
以以下参数作为输入:
哪里<url>
可以[email protected]:username/repositoryName.git
这对 bat 文件有效。
使用:文件.bat<url>
@echo off
SET url=%~1
git clone %url%
SET %url%repo=%url%
SET %url%%url%folder=%repo%
DEL /S %folder%\.idea
或者这个用于 bash。
使用:sh 文件.sh<url>
#!/bin/bash
url=$1
git clone $url
repo=${url##*/};
folder=${repo%.*}
rm -r $folder/.idea
答案3
在 bash 中这可能是
git clone <url> && rm -rf repositoryName/.idea
如果前一个命令成功,则运行&&
以下命令。
有关“抨击此事”的更多阅读内容请参见此处: