我有本地Git倉庫某處我的文件系統的一堆(10-15)的所有未提交當地人回購,但所有的文件夾/數據/混帳:查找目錄樹
我想找到所有的/任何有未得到改變的文件夾。我怎樣才能做到這一點?有點像遞歸全局git status
變種。
所有的答案錯了,我想。任何git命令只能在git控制下的文件夾中使用。我需要一些東西來搜索這樣的文件夾。
所以不是我寫這個劇本,這是否:
#!/usr/bin/env ruby
require 'find'
require 'fileutils'
#supply directory to search in as argument
@pat = ARGV[0]
(puts "directory argument required"; exit) unless @pat
Dir.chdir(@pat)
Find.find(@pat) do |path|
if FileTest.directory?(path)
Dir.chdir(path)
resp = `git status 2>&1`
unless resp =~ /fatal|nothing to commit \(working directory clean\)/i
puts "#{'#'*10}\n#{Dir.pwd}#{'#'*10}\n#{resp}"
Find.prune
end
Dir.chdir(@pat)
end
end
不要使用git的狀態做的工作。改用git-ls-files和git-diff/git-diff-files。 – 2009-06-07 17:44:12
git-status有什麼問題? – Bombe 2009-06-08 08:53:36
git-status是所謂的瓷器,它意味着用戶,而不是腳本。其輸出可能會改變,恕不另行通知 – 2009-06-09 11:05:46