标签: git-commit

Git将所有提交作为单个提交推送自定义消息

我想知道是否有可能将所有本地提交(当天的所有'未删除'提交)作为单个提交与自定义消息推送到远程存储库.Stack Overflow上的帖子似乎都没有回答这个问题.我在Windows上使用Git Bash.

提前致谢.

git git-push git-commit

9
推荐指数
1
解决办法
6242
查看次数

GIT在分离的HEAD状态下提交--amend

我知道修改旧GIT提交的正确方法是使用rebase --interactive,但为了清楚这些概念,我想了解当我做什么时会发生什么

  • git checkout <commit>
  • 改变文件中的内容
  • 将更改的文件添加到索引中
  • 然后 git commit . --amend

当我这样做时,它不是修改提交,而是从同一提交的PARENT分支新的提交.

这只是GIT的方式告诉我,我不能修改已经有子提交的提交吗?

git commit rebase git-amend git-commit

9
推荐指数
1
解决办法
1898
查看次数

你的分支落后于2次提交

我有一个名为218的主分支分支.

我是唯一使用这个分支的人.

我在3周前提交了我的更改,希望执行拉取请求,但由于我需要进行更改而被拒绝.

现在我做了这些更改,我想将最新的更改提交给我的分支.

我试图提交,它告诉我,我需要合并和拉动.所以我做了,它搞砸了我的所有文件,并摆脱了我在过去3周内所做的更改.

我解除了这个: git reset --hard HEAD~1

现在,因为它在我的计算机上的所有文件中都存在,所有文件都应该是这样的.但是当我做git状态时,我的更改没有显示,它说:

Your branch is behind 'origin/feature/218' by 2 commits, and can be fast forwarded. nothing to commit, working directory clean. 
Run Code Online (Sandbox Code Playgroud)

我希望在我的本地计算机上创建我目前在我的仓库中的分支,而不是拉下任何东西,而是用我本地的东西覆盖所有内容.

我该怎么做呢?

git version-control git-merge git-commit

9
推荐指数
2
解决办法
3万
查看次数

为什么我不能承诺?(您的分支与'origin/master'是最新的,没有更改添加到提交)

我在向GitHub提交文件时遇到了一些麻烦.我可以把它变成git add,但是当我尝试时$ git commit -m 'my message'我得到一个错误,不允许我完成添加文件的过程.

$ git add HelloWorld.md

$ git commit -m 'Hello world'
Run Code Online (Sandbox Code Playgroud)

我得到以下答案(删除:README.md&.DS_Store为红色):

On branch master

Your branch is up-to-date with 'origin/master'.

Changes not staged for commit:
        deleted:    README.md

Untracked files:
        .DS_Store

no changes added to commit
Run Code Online (Sandbox Code Playgroud)

git macos terminal git-commit

9
推荐指数
2
解决办法
2万
查看次数

git undo commit on protected branch?

有没有办法撤消受保护分支上的提交?

我的意思是,如果你推送了一个错误的提交,在一个非受保护的分支上,你可以撤消它将HEAD重置为最后一个所需的提交,或者恢复错误的提交然后强制推送.但受保护的分支不允许推力.在这种情况下修复它的方法是什么?

编辑:指定的(rigtht)提交不是合并.

git commit git-commit

9
推荐指数
1
解决办法
4890
查看次数

使用“fixup!”之间有什么真正的区别吗?或“壁球!”?

我一直在阅读有关commitrebasefixup!的git 文档,但我仍然不明白squash!在执行rebase --autosquash. 我相信我理解修复以前的提交的fixup!作用,但我没有看到一个很好的例子来代替。任何人都可以澄清两者之间的区别,并给出一些它们以不同方式使用的背景吗?提前致谢!squash!

git git-rebase git-commit

9
推荐指数
1
解决办法
4663
查看次数

Force Bitbucket承诺通过Comment Formatting与JIRA Ticket相关联

确切的需要是强制将所有提交到Bitbucket的提交链接到JIRA票证.

我之前在Subversion上通过创建一个在提交文本中查找JIRA票证的提交钩子来做到这一点,但我不希望这个解决方案必然受限于之前的体验.

Bitbucket是否有设置某个地方强制关联所有提交对Jira门票?如果不是 - 它是否具有强制提交评论质量的机制(某种钩子或正则表达式)?如果不是 - GIT是否有可以用于此目的的东西?

如果注释文本不包含前导JIRA票证,后跟冒号,后跟一些提交文本,那么想象的解决方案是(但不限于是)提交失败的提交钩子,这样:

git commit -m "foo"
Run Code Online (Sandbox Code Playgroud)

失败了

git commit -m "PRJ-9327: foo"
Run Code Online (Sandbox Code Playgroud)

承诺...

jira bitbucket pre-commit-hook git-commit

9
推荐指数
1
解决办法
4043
查看次数

提交签名如何工作?

我目前想知道git commit签名是如何工作的.

试图找到这个,但找不到任何确切的技术文档.我知道如何进行git commit签名,但我想知道git在签名提交时究竟做了什么.

究竟是什么签署?它是给定提交中存储库内的完整数据,所以提交消息等数据和所有文件的数据?或者只是提交指向包含的文件等?

git signing git-commit

9
推荐指数
2
解决办法
685
查看次数

在提交消息 gitlab 中链接另一个提交的引用

我知道我们可以在提交消息中将问题提及为“#issue_no”,但是是否可以将其链接到 gitlab 中的另一个提交?

在提交消息中提及提交 SHA 或完整提交 URL?

git git-commit gitlab

9
推荐指数
1
解决办法
5156
查看次数

如何在带有 nvm 的 MacO 上使用 Husky 和 ​​SourceTree 来修复这些错误?“在 PATH 中找不到节点”和“当前目录不是 git 目录!”

当我在节点项目中使用 husky hooks 并尝试通过应用程序 SourceTree 提交到 git 时,我看到错误。挂钩在package.json中指定。我正在使用 nvm 来管理节点版本。

Can't find node in PATH husky > pre-commit hook failed 使用SourceTree进行git提交时,会报错。

一旦绕过这个错误,当使用 SourceTree 的嵌入式 git 通过 SourceTree 尝试提交时,husky 会报告另一个错误:“当前目录不是 git 目录!”。

我该如何解决这些错误?

macos githooks git-commit atlassian-sourcetree husky

9
推荐指数
3
解决办法
1万
查看次数