On Mon, Mar 29, 2021 at 06:44:19PM +0800, Luan Shengde wrote:
- new_refs = check_new_refs(git_repo)
- return if new_refs[:heads].empty?
- feedback_info[:new_refs] = new_refs
- send_message(feedback_info)
- new_refs_log(git_repo, new_refs[:heads].length) if last_commit_new?(git_repo)
handle_feedback_new_refs(git_repo, feedback_info) end
def do_push(fork_key)
@@ -283,14 +276,19 @@ class MirrorMain return new_refs end
- def get_change_files(upstream_repos)
- old_commit = @git_info[upstream_repos][:cur_refs][:heads]['refs/heads/master']
- new_refs = check_new_refs(upstream_repos)
- new_commit = new_refs[:heads]['refs/heads/master']
- mirror_dir = "/srv/git/#{@git_info[upstream_repos]['belong']}/#{upstream_repos}.git"
- %x(git -C #{mirror_dir} diff --name-only #{old_commit}...#{new_commit})
you can use ruby-git instead of os command
That can be another choice.
Thanks, Yuanchao