lib git: Clear git-bin cache after sync
This commit is contained in:
parent
8df73d9bee
commit
618b0b520c
|
@ -81,6 +81,9 @@ namespace SparkleLib.Git {
|
|||
this.use_git_bin = true;
|
||||
}
|
||||
|
||||
|
||||
this.use_git_bin = true; // TODO: remove
|
||||
|
||||
TargetFolder = target_folder;
|
||||
RemoteUrl = uri;
|
||||
}
|
||||
|
@ -328,8 +331,8 @@ namespace SparkleLib.Git {
|
|||
{
|
||||
string [] settings = new string [] {
|
||||
"core.bigFileThreshold 8g",
|
||||
"config filter.bin.clean \"git bin clean %f\"",
|
||||
"config filter.bin.smudge \"git bin smudge\"",
|
||||
"filter.bin.clean \"git bin clean %f\"",
|
||||
"filter.bin.smudge \"git bin smudge\"",
|
||||
"git-bin.chunkSize 1m",
|
||||
"git-bin.s3bucket \"your bucket name\"",
|
||||
"git-bin.s3key \"your key\"",
|
||||
|
|
|
@ -274,7 +274,13 @@ namespace SparkleLib.Git {
|
|||
UpdateSizes ();
|
||||
ChangeSets = GetChangeSets ();
|
||||
|
||||
return (git.ExitCode == 0);
|
||||
if (git.ExitCode == 0) {
|
||||
ClearCache ();
|
||||
return true;
|
||||
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -341,6 +347,7 @@ namespace SparkleLib.Git {
|
|||
);
|
||||
|
||||
ChangeSets = GetChangeSets ();
|
||||
ClearCache ();
|
||||
|
||||
return true;
|
||||
|
||||
|
@ -780,6 +787,17 @@ namespace SparkleLib.Git {
|
|||
}
|
||||
|
||||
|
||||
private void ClearCache ()
|
||||
{
|
||||
if (!this.use_git_bin)
|
||||
return;
|
||||
|
||||
SparkleGitBin git_bin = new SparkleGitBin (LocalPath, "clear -f");
|
||||
git_bin.Start ();
|
||||
git_bin.WaitForExit ();
|
||||
}
|
||||
|
||||
|
||||
// Git doesn't track empty directories, so this method
|
||||
// fills them all with a hidden empty file.
|
||||
//
|
||||
|
|
Loading…
Reference in a new issue