From: Steffen Prohaska Date: Tue, 15 Jan 2008 21:41:53 GMT Subject: Re: [PATCH] safecrlf: Add flag to convert_to_git() to disable safecrlf check Message-ID: In-Reply-To: On Jan 15, 2008, at 9:52 PM, Steffen Prohaska wrote: >> Of course, "git add" on the path will warn or fail with your >> patch, but we may somehow want to be warned about the breakage >> before "git add" on that path triggers it. Perhaps we can have >> a separate "check-work-tree" command that iterates over locally >> modified work tree files and runs convert_to_git() with checking >> enabled. > > We could certainly have such a command, yet the question remains > when to call it. Do you have in mind calling it when we enter > the work tree, such that all files in the work tree will always > be verified? Running the check once during start up should be > sufficient and we could switch it off for the remainder of the > execution. > > We would certainly print all paths with an irreversible conversion > and only die() afterwards if requested by core.safecrlf=true. > All information would be printed at once in an ordered way. This > could be more user friendly than the current approach. > > I'll work on this. What is the right way to iterate over the changed files? Should I copy and adapt the following from wt-status.c? static void wt_status_print_changed(struct wt_status *s) { struct rev_info rev; init_revisions(&rev, ""); setup_revisions(0, NULL, &rev, NULL); rev.diffopt.output_format |= DIFF_FORMAT_CALLBACK; rev.diffopt.format_callback = wt_status_print_changed_cb; rev.diffopt.format_callback_data = s; wt_read_cache(s); run_diff_files(&rev, 0); } Steffen