The man page for the knife upload subcommand. the knife upload subcommand is used to upload roles, cookbooks, environments, and data bags to the server from the current working directory in the chef-repo. this subcommand is often used in conjunction with knife diff, which can be used to see exactly what changes will be uploaded, and then knife download, which does the opposite of knife upload. syntax this argument has the following syntax: