从位桶历史记录中删除文件夹

时间:2018-08-09 07:49:43

标签: php git bitbucket

我是git仓库的新手。我在bitbucket中有2gb的限制,并且我在误操作中添加了一个1.5 gb的function apples(cb) { sql.connect(config, function () { var request = new sql.Request(); request.query("select price from table WHERE fruit = 'apples'", function(err, recordsetapples) { if(err) { return cb(err); } var arrayLength = recordsetapples.length; for (var i = 0; i < arrayLength; i++) { console.log(recordsetapples[i]["price"]); }; cb(false, recordsetapples); }); }); }; function pear(cb) { sql.connect(config, function () { var request = new sql.Request(); request.query("select price from table WHERE fruit = 'pear'", function(err, recordsetpear) { if(err){ return cb(err) } var arrayLength = recordsetpear.length; for (var i = 0; i < arrayLength; i++) { console.log(recordsetpear[i]["price"]); }; cb(false,recordsetpear); }); }); }; app.get('/fruit', (req,res) => { apples((appleerr,appleset) => { if(appleerr){ //render error page } else { pear((pearerr, pearset) => { if(pearerr) { //render error page } else { return res.render('index', { resultapples: appleset, resultpears: pearset }); } }) } }); }); 文件夹并推送了代码。

现在,位桶大小为1.8gb。要从历史记录中删除文件夹,请按照以下步骤操作。

Remove folder and its contents from git/GitHub's history

async/await

我按照以下步骤操作,并检入了以前的提交内容,然后删除了该文件夹。但是function apples() { return new Promise((resolve,reject) => { sql.connect(config, function () { var request = new sql.Request(); request.query("select price from table WHERE fruit = 'apples'", function(err, recordsetapples) { if(err) { reject(err); } var arrayLength = recordsetapples.length; for (var i = 0; i < arrayLength; i++) { console.log(recordsetapples[i]["price"]); }; resolve(recordsetapples); }); }); }; function pear() { return new Promise((resolve,reject) => { sql.connect(config, function () { var request = new sql.Request(); request.query("select price from table WHERE fruit = 'pear'", function(err, recordsetpear) { if(err){ reject(err) } var arrayLength = recordsetpear.length; for (var i = 0; i < arrayLength; i++) { console.log(recordsetpear[i]["price"]); }; resolve(recordsetpear); }); }); }); }; app.get('/fruit', (req,res) => { var applePromise = apples() var pearsPromise = applePromise.then((appleSet)) { return pear() } Promise.all([applePromise,pearsPromise]).then((([appleSet,pearSet]) => { res.render('index', { resultapples: appleSet, resultpear: pearSet }); }).catch((err) => { //render error }) }); 仍然提供1.8gb的大小包

在bitbucket存储库设置中,它仍然显示1.8gb

我想念什么吗?

1 个答案:

答案 0 :(得分:1)

您必须进入bitbucket页面才能删除文件。

  1. 进入您的仓库,
  2. 选择来源(左侧面板)
  3. 选择分支机构
  4. 找到您的文件夹
  5. 进入并删除那里的所有图像(右上角有3个可点击的点,这是删除选项)

您不能删除那样的文件夹(由于某些原因,bitbucket只能手动删除文件和删除分支),但是您始终可以手动清空文件夹,并在下一次git push中通过控制台将其删除。

警告。此操作类似于“硬删除”,因此在使用时要格外小心,如果可以使用git命令,请不要使用它。

编辑

 git gc --prune=now  //accepts date

看看这个link,有很多选项可能适合您的问题。

另一种方法是git filter-branch --force。有关此命令的更多信息,您可以找到here。该命令专门用于“重写” git历史记录,因此可以完成您的工作。这很棘手,但可以。

最后一种也是最后一种方法(老实说,从未使用过这种方法)是3rd party软件(因为atlassian甚至在其文档中都包括了它,因此确实很安全),但是它是Java语言,因此首先您需要安装Java才能运行控制台中的java命令。我看到了您的php标记,因此我只是为了考虑一下就将其保留了下来。我离开了链接here