本文主要是介绍Git使用经验总结7-自动检测未提交内容并进行提交,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
标题有点绕,其实是这个意思:远端像Github这样的仓库由于网速的问题,你是没办法进行大数据量的提交的,因为很有可能会因为连接超时而导致提交中断。对于这种情况就需要使用脚本,检查未提交内容,分批次进行多次提交。例如笔者使用的PowerShell脚本如下:
# 获取当前未提交的 .tif 文件列表
$files = git status --porcelain | Where-Object { $_ -match '\.tif$' } | ForEach-Object { $_.Substring(3).Trim() }# 判断是否有未提交的文件
if ($files.Count -eq 0) {Write-Host "No Need Commit Files!"exit
}# 遍历每个文件,进行提交和推送
foreach ($file in $files) {Write-Host "Commit File: $file"# 添加文件到暂存区git add $file# 提交文件git commit -m "Commit File $file"# 推送到远程仓库git push origin main # 请根据你的远程分支名称进行修改
}Write-Host "All File Commit And Push!"
这里脚本的意思是找到未提交的后缀为.tif数据文件,将这些文件一个一个进行提交。提交的脚本很简单,就是调用git指令。关键在于要获取git status --porcelain
返回的文件内容,并对其进行选取,并用了正则表达式进行匹配。读者可以根据自己的条件进行改写,如果不会写就问一问AI吧。
笔者使用这个脚本将70G的SRTM数据提交到Github代码仓库中去了,有兴趣的读者可以看看:地址。提交完成后整个仓库的体积超过了140G😓,看来Git仓库确实不太适合管理二进制数据,这样傻的时候以后还是不要做了,就算上传成功了以后下载下来也是个麻烦事情。
这篇关于Git使用经验总结7-自动检测未提交内容并进行提交的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!