git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/20] Delete directories left empty after ref deletion
@ 2016-02-25 13:15 Michael Haggerty
  2016-02-25 13:16 ` [PATCH v2 01/20] safe_create_leading_directories_const(): preserve errno Michael Haggerty
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: Michael Haggerty @ 2016-02-25 13:15 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Karl Moskowski, Jeff King, Mike Hommey, David Turner,
	Michael Haggerty

This re-roll addresses a few minor points that were brought up about v1 [1]:

* "safe_create_leading_directories(): set errno on SCLD_EXISTS":
  * Set errno to ENOTDIR rather than EEXIST.

* "raceproof_create_file(): new function":
  * Improve comments.

* "rename_tmp_log(): use raceproof_create_file()":
  * Fix whitespace.

* "rename_tmp_log(): improve error reporting":
  * Fix whitespace.

This patch series is also available from my GitHub account [2] as
branch delete-empty-refs-dirs.

Thanks to Junio and Peff for their feedback about v1.

Michael

[1] http://thread.gmane.org/gmane.comp.version-control.git/286370
[2] http://github.com/mhagger/git

Michael Haggerty (20):
  safe_create_leading_directories_const(): preserve errno
  safe_create_leading_directories(): set errno on SCLD_EXISTS
  raceproof_create_file(): new function
  lock_ref_sha1_basic(): use raceproof_create_file()
  rename_tmp_log(): use raceproof_create_file()
  rename_tmp_log(): improve error reporting
  log_ref_setup(): separate code for create vs non-create
  log_ref_setup(): improve robustness against races
  log_ref_setup(): pass the open file descriptor back to the caller
  log_ref_write_1(): don't depend on logfile
  log_ref_setup(): manage the name of the reflog file internally
  log_ref_write_1(): inline function
  try_remove_empty_parents(): rename parameter "name" -> "refname"
  try_remove_empty_parents(): don't trash argument contents
  try_remove_empty_parents(): don't accommodate consecutive slashes
  t5505: use "for-each-ref" to test for the non-existence of references
  delete_ref_loose(): derive loose reference path from lock
  delete_ref_loose(): inline function
  try_remove_empty_parents(): teach to remove parents of reflogs, too
  ref_transaction_commit(): clean up empty directories

 cache.h               |  52 ++++++-
 refs/files-backend.c  | 370 ++++++++++++++++++++++++++------------------------
 refs/refs-internal.h  |   9 +-
 sha1_file.c           |  77 ++++++++++-
 t/t1400-update-ref.sh |  27 ++++
 t/t5505-remote.sh     |   2 +-
 6 files changed, 351 insertions(+), 186 deletions(-)

-- 
2.7.0

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2016-02-25 13:24 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-25 13:15 [PATCH v2 00/20] Delete directories left empty after ref deletion Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 01/20] safe_create_leading_directories_const(): preserve errno Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 02/20] safe_create_leading_directories(): set errno on SCLD_EXISTS Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 03/20] raceproof_create_file(): new function Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 04/20] lock_ref_sha1_basic(): use raceproof_create_file() Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 05/20] rename_tmp_log(): " Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 06/20] rename_tmp_log(): improve error reporting Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 07/20] log_ref_setup(): separate code for create vs non-create Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 08/20] log_ref_setup(): improve robustness against races Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 09/20] log_ref_setup(): pass the open file descriptor back to the caller Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 10/20] log_ref_write_1(): don't depend on logfile Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 11/20] log_ref_setup(): manage the name of the reflog file internally Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 12/20] log_ref_write_1(): inline function Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 13/20] try_remove_empty_parents(): rename parameter "name" -> "refname" Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 14/20] try_remove_empty_parents(): don't trash argument contents Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 15/20] try_remove_empty_parents(): don't accommodate consecutive slashes Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 16/20] t5505: use "for-each-ref" to test for the non-existence of references Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 17/20] delete_ref_loose(): derive loose reference path from lock Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 18/20] delete_ref_loose(): inline function Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 19/20] try_remove_empty_parents(): teach to remove parents of reflogs, too Michael Haggerty
2016-02-25 13:16 ` [PATCH v2 20/20] ref_transaction_commit(): clean up empty directories Michael Haggerty

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).