<commit_before>module.exports = function(grunt) {
	// load dependencies
	grunt.loadNpmTasks("grunt-git");

	// Project configuration.
	grunt.initConfig({
		gitcheckout: {
			ghpages: {
				options: {
					branch: "gh-pages"
				}
			},
			master: {
				options: {
					branch: "master"
				}
			}
		},
        gitmerge: {
            master: {
                options: {
                    branch: "master",
                    noff: true,
                    noEdit: true
                }
            }
        },
		generate: {
			files: {
				// src: dest
				'js/vendor/bootstrap/dist/js/bootstrap.min.js': 'js/bootstrap.min.js',
				'js/vendor/handlebars/handlebars.min.js': 'js/handlebars.min.js',
				'js/vendor/jquery/dist/jquery.min.js': 'js/jquery.min.js',
				'js/vendor/modernizr/modernizr.js': 'js/modernizr.js'
			}
		},
        gitadd: {
            all: {
                options: {
                    force: false,
                    all: true
                }
            }
        },
        gitcommit: {
            ghpages: {
                options: {
                    message: 'Deploying...',
                    noVerify: true,
                    noStatus: false
                }
            }
        },
        gitpush: {
            origin: {
                options: {
                    remote: "origin",
                    branch: "gh-pages"
                }
            }
        }
	});


	// deploy
	grunt.registerTask("deploy", ["gitcheckout:ghpages", "gitmerge:master", "generate", "gitadd:all", "gitcommit:ghpages", "gitpush:origin", "gitcheckout:master"]);

	grunt.registerTask("generate", function(){
		grunt.log.writeln('Generating files...');

		var files = grunt.config.get(this.name + '.files');
		for (var src in files) {
			var dest = files[src];
            if (!grunt.file.exists(dest)) {
                grunt.file.copy(src, dest);
                grunt.log.writeln("Copying [" + src + "] to [" + dest + "]").ok();
            }
		}
	});

};
<commit_msg>Grunt deploy task: allow empty commits<commit_after>module.exports = function(grunt) {
	// load dependencies
	grunt.loadNpmTasks("grunt-git");

	// Project configuration.
	grunt.initConfig({
		gitcheckout: {
			ghpages: {
				options: {
					branch: "gh-pages"
				}
			},
			master: {
				options: {
					branch: "master"
				}
			}
		},
        gitmerge: {
            master: {
                options: {
                    branch: "master",
                    noff: true,
                    noEdit: true
                }
            }
        },
		generate: {
			files: {
				// src: dest
				'js/vendor/bootstrap/dist/js/bootstrap.min.js': 'js/bootstrap.min.js',
				'js/vendor/handlebars/handlebars.min.js': 'js/handlebars.min.js',
				'js/vendor/jquery/dist/jquery.min.js': 'js/jquery.min.js',
				'js/vendor/modernizr/modernizr.js': 'js/modernizr.js'
			}
		},
        gitadd: {
            all: {
                options: {
                    force: false,
                    all: true
                }
            }
        },
        gitcommit: {
            ghpages: {
                options: {
                    message: 'Deploying...',
                    noVerify: true,
                    noStatus: false,
                    allowEmpty: true
                }
            }
        },
        gitpush: {
            origin: {
                options: {
                    remote: "origin",
                    branch: "gh-pages"
                }
            }
        }
	});


	// deploy
	grunt.registerTask("deploy", ["gitcheckout:ghpages", "gitmerge:master", "generate", "gitadd:all", "gitcommit:ghpages", "gitpush:origin", "gitcheckout:master"]);

	grunt.registerTask("generate", function(){
		grunt.log.writeln('Generating files...');

		var files = grunt.config.get(this.name + '.files');
		for (var src in files) {
			var dest = files[src];
            if (!grunt.file.exists(dest)) {
                grunt.file.copy(src, dest);
                grunt.log.writeln("Copying [" + src + "] to [" + dest + "]").ok();
            }
		}
	});

};

{'fraction_non_alphanumeric': 0.1470516271103499, 'fraction_numerical': 0.0, 'mean_word_length': 1.3200908059023837, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5577956', 'n_tokens_mistral': 1401, 'n_tokens_neox': 1226, 'n_words': 197}