【问题标题】:How to git pull for multiple repos on windows?如何在 Windows 上为多个 repos git pull?
【发布时间】:2014-08-05 02:15:21
【问题描述】:

所以我有很多回购,有时我会忘记是否有一些落后于他们的拉动,所以我想知道有一种方法可以在一个 .bat 脚本中为每个回购提供 git pull。我看到有人为 linux 做我相信here,但我在 Windows 机器上。有谁知道如何为 Windows 执行此操作?

【问题讨论】:

    标签: windows git bash github


    【解决方案1】:

    这是一个 PowerShell 版本

    Get-ChildItem -Directory | foreach { Write-Host "`n■ Getting latest for $_ ↓" -ForegroundColor Green | git -C $_.FullName pull --all --recurse-submodules --verbose }
    

    【讨论】:

    【解决方案2】:

    如果你安装了带有 MinGW (bash) 的 Git,你可以执行这个并行工作的命令。

     ls -d **/* | xargs -P10 -I{} git -C {} pull
    

    【讨论】:

      【解决方案3】:

      我真的很喜欢 @eikooc 的回答 - 并希望它能够工作 - 但它在 Windows 10 上对我不起作用。

      这是我的变体:

      for /f %%f in ('dir /ad /b C:\Documents\GitRepos\') do cd /d C:\Documents\GitRepos\%%f & call git pull & cd ..
      

      【讨论】:

        【解决方案4】:

        您可以制作一个 .bat 文件,您可以在其中自己添加所有存储库

        cd C:\path\to\git\repo
        call git pull
        cd C:\path\to\git\repo2
        call git pull
        

        或者让它通过 git repositories 运行整个目录

        FOR /D %G in (C:\Documents\GitRepos\*) Do cd %G & call git pull & cd ..
        

        有一个GUI客户端Github for windows而不是.bat文件

        如果您的所有存储库都在其中,记住将它们全部同步不会很痛苦。

        【讨论】:

        • 如果这不是一个选项,请尝试此处描述的技术:addyosmani.com/blog/backing-up-a-github-account
        • 我过去使用过该应用程序,但我觉得它太笨重了,至少对我而言,在我打开应用程序所需的时间里,我可以通过命令行同步几个.但是这个链接看起来真的很有用!
        • 我相信这正是你要找的:stackoverflow.com/questions/17099564/…如果我错了,请纠正我
        • 太完美了!谢谢!
        • 我已经对答案进行了一些编辑以包含更好的答案
        猜你喜欢
        • 2010-11-16
        • 2011-07-09
        • 2015-04-12
        • 2022-11-02
        • 2014-07-17
        • 2011-02-17
        • 2016-09-09
        • 1970-01-01
        • 2022-06-29
        相关资源
        最近更新 更多