diff options
Diffstat (limited to 'api')
| -rw-r--r-- | api/git.js | 26 | 
1 files changed, 24 insertions, 2 deletions
| @@ -157,12 +157,27 @@ function getCommit(base_dir, repo_name, commit_oid)  			{  				return patch.hunks().then((hunks) =>  				{ -					console.log(patch.newFile().path()); +					console.log("\n" + patch.newFile().path());  					const patch_start = patch_header_data[0][patch_index] + patch_header_data[1][patch_index];  					const patch_end = (patch_header_data[0][patch_index + 1] !== undefined) ? patch_header_data[0][patch_index + 1] : all_patches.length - 1;  					const patch_content = all_patches.slice(patch_start, patch_end); +					console.log(patch_content.length); +					if(patch_content.length > 5000) { +						console.log("Collapsed!"); +						 +						arr.push({ +							from: patch.oldFile().path(), +							to: patch.newFile().path(), +							additions: patch.lineStats()["total_additions"], +							deletions: patch.lineStats()["total_deletions"], +							too_large: true, +							hunks: null +						}); +						return arr; +					} +  					// Go through all of the patch's hunks  					// Patches are split into parts of where in the file the change is made. Those parts are called hunks.  					return hunks.reduce((acc, hunk, hunk_index) => @@ -197,7 +212,14 @@ function getCommit(base_dir, repo_name, commit_oid)  							old_lines: prev_hunk.oldLines(),  						}, parseHunkAddDel(patch_content.slice(hunks_data[0], patch_end)))); -						arr.push({ from: patch.oldFile().path(), to: patch.newFile().path(), hunks: hunks_data[1] }); +						arr.push({ +							from: patch.oldFile().path(), +							to: patch.newFile().path(), +							additions: patch.lineStats()["total_additions"], +							deletions: patch.lineStats()["total_deletions"], +							too_large: false, +							hunks: hunks_data[1] +						});  						return arr;  					}); | 
