在本地系统中还原Git Commit

时间:2016-10-15 05:47:41

标签: git github

我想仅在本地系统中恢复或删除我的git提交,这样当我从本地机器推送我的代码时,它不会出现在bitbucket或github的提交列表中。请建议一个方法。

2 个答案:

答案 0 :(得分:0)

您可以使用[super layoutSubview]命令

重置上次提交

擦除此命令以列出所有提交

- (void)layoutSubviews
{
    [super layoutSubviews];
    for (UIScrollView *view in self.subviews) {
        if ([view isKindOfClass:[UIScrollView class]]) {
            CGPoint offset = view.contentOffset;
            if (offset.y != 0) {
                offset.y = 0;
                view.contentOffset = offset;
            }
            break;
        }
    }
}

使用

恢复为git reset
$ git log

commit a65aec279778a25870a2f194c0c91584e9a870c1
Author: Deepak <name@email.com>
Date:   Wed Aug 31 19:58:17 2016 +0530

    New commit

commit cb1137a1c6cb2ac7bdfe25e9cdda8a7513d599fc
Author: Deepak <name@email.com>
Date:   Wed Aug 31 19:48:41 2016 +0530

    Old commit
  

注意:这是您想要还原的旧提交的提交哈希

要确保删除"Old commit",请再次检查

git reset cb1137a1c6cb2ac7bdfe25e9cdda8a7513d599fc 

答案 1 :(得分:-2)

首先,如果你只做了那个提交,我宁愿删除你的本地分支并获取远程分支,这将是逃避强制提交或分支转移的最佳方式。

要删除分支git checkout <branch name>,您应该确保,您不在分支机构,您需要删除。

之后,你可以直接结账到分行本身,你会发现那里的提交不可用git reset --hard <commit-id>

当然,如果你需要合并到遥控器的提交超过1次,你应该使用git push origin <branch name> --force,然后按下代码,可能会出现无法推送的情况。如果你确定要推动它,你肯定会选择@Provider public class OptionsException implements ExceptionMapper<DefaultOptionsMethodException> { @Context HttpServletRequest req; // as suggested by @Ivan @Override public Response toResponse(DefaultOptionsMethodException ex) { String u = req.getRequestURI(); return Response.ok().build(); } }

如果您正在与团队合作,请不要使用此项,否则您的团队将因强制提交而受到影响。您需要做的是rebase