草庐IT

Git:--force-with-lease 和多个 pushurls

我有一个带有远程origin的git仓库镜像在3台主机上。$gitremote-vorigingit@github.com:username/repo.git(fetch)origingit@github.com:username/repo.git(push)origingit@gitlab.com:username/repo.git(push)origingit@bitbucket.org:username/repo.git(push)任何地方的一切都在提交A。$gitrev-parseHEADA$cat.git/refs/remotes/origin/masterA我提交了B并推送

git - 在github上找一个force push的committer

在我们的项目(托管在GitHub上)中,有人不小心每隔一段时间强制推送master。如果这样做,没有人知道,我想知道是谁做的,以及它背后是哪种配置错误的工具或坏习惯。那么问题来了,如何识别强推的用户呢?当我pull时,我看到这样的东西:#gitpull--prune(.....)+4c0d44c...138b9edmaster->origin/master(forcedupdate)但138b9ed只是origin/master中的最新提交,任何人都可能在强制推送后提交;甚至有可能forcepusher自己没有做任何事情,只是rebased,所以他的名字甚至没有作为作者出现在origi

git - 在github上找一个force push的committer

在我们的项目(托管在GitHub上)中,有人不小心每隔一段时间强制推送master。如果这样做,没有人知道,我想知道是谁做的,以及它背后是哪种配置错误的工具或坏习惯。那么问题来了,如何识别强推的用户呢?当我pull时,我看到这样的东西:#gitpull--prune(.....)+4c0d44c...138b9edmaster->origin/master(forcedupdate)但138b9ed只是origin/master中的最新提交,任何人都可能在强制推送后提交;甚至有可能forcepusher自己没有做任何事情,只是rebased,所以他的名字甚至没有作为作者出现在origi

git - 当 git 说 "forced update"时,人们可能会在什么地方丢失东西?

我最近在一个只有我提交的存储库上收到来自git的“强制更新”警告。我没有做过任何重新定位,所以我不知道为什么会这样。我想知道的是,我应该在哪里寻找可能丢失的更改?为了说明,假设存储库有三个副本,L、D和S(笔记本电脑、台式机、服务器)。首先,所有三个存储库都是同步的。然后在D上完成工作并推送到S。然后L运行gitpull并获得“强制更新”。这是否意味着对L所做的更改已被覆盖,或者它们在其他地方?我怎样才能找到它们?谢谢。 最佳答案 “强制更新”意味着远程跟踪分支是最近的。如果您在有人强制推送到存储库后获取(或pull),就会发生这种

git - 当 git 说 "forced update"时,人们可能会在什么地方丢失东西?

我最近在一个只有我提交的存储库上收到来自git的“强制更新”警告。我没有做过任何重新定位,所以我不知道为什么会这样。我想知道的是,我应该在哪里寻找可能丢失的更改?为了说明,假设存储库有三个副本,L、D和S(笔记本电脑、台式机、服务器)。首先,所有三个存储库都是同步的。然后在D上完成工作并推送到S。然后L运行gitpull并获得“强制更新”。这是否意味着对L所做的更改已被覆盖,或者它们在其他地方?我怎样才能找到它们?谢谢。 最佳答案 “强制更新”意味着远程跟踪分支是最近的。如果您在有人强制推送到存储库后获取(或pull),就会发生这种

来自 IntelliJ IDEA 的 Git push --force

似乎强制选项已从推送对话框中删除。我目前正在使用IntelliJIDEA13.1.1,但我找不到任何方法来使用强制选项进行推送。我试图搜索文档,似乎在版本10中强制选项仍然存在。您可能知道如何使用IntelliJIDEA进行强制推送? 最佳答案 自从IntelliJIDEA14更新后,可以为此启用一个复选框,您首先必须在“设置”->“版本控制”->“Git”中启用“允许强制推送”。2018年更新:要在ma​​ster分支上允许强制推送,请在Git设置中查找“protected分支”->然后删除值“大师”。

来自 IntelliJ IDEA 的 Git push --force

似乎强制选项已从推送对话框中删除。我目前正在使用IntelliJIDEA13.1.1,但我找不到任何方法来使用强制选项进行推送。我试图搜索文档,似乎在版本10中强制选项仍然存在。您可能知道如何使用IntelliJIDEA进行强制推送? 最佳答案 自从IntelliJIDEA14更新后,可以为此启用一个复选框,您首先必须在“设置”->“版本控制”->“Git”中启用“允许强制推送”。2018年更新:要在ma​​ster分支上允许强制推送,请在Git设置中查找“protected分支”->然后删除值“大师”。

git - 有没有办法配置 git 存储库以拒绝 'git push --force' ?

我想知道是否有一种方法可以防止存储库上的“gitpush--force”(仅在master分支上)?假设我有远程git存储库并执行:'gitpush'到'master'。它有效。'gitpush--force'到'branch-1'。它有效。'gitpush--force'到'master'。它被拒绝了。有可能吗?感谢您的任何回答和建议。BR,大卫。 最佳答案 设置配置变量:receive.denyNonFastForwardsreceive.denyDeletes将防止任何“强制”推送在所有分支上起作用。如果你想要更精细的预分支控

git - 有没有办法配置 git 存储库以拒绝 'git push --force' ?

我想知道是否有一种方法可以防止存储库上的“gitpush--force”(仅在master分支上)?假设我有远程git存储库并执行:'gitpush'到'master'。它有效。'gitpush--force'到'branch-1'。它有效。'gitpush--force'到'master'。它被拒绝了。有可能吗?感谢您的任何回答和建议。BR,大卫。 最佳答案 设置配置变量:receive.denyNonFastForwardsreceive.denyDeletes将防止任何“强制”推送在所有分支上起作用。如果你想要更精细的预分支控

git push --force-with-lease 与 --force

我试图理解两者之间的区别gitpush--force和gitpush--force-with-lease我的猜测是后者只推送到远程如果远程提交了本地分支没有? 最佳答案 force用本地分支覆盖远程分支。--force-with-lease是一个更安全的选项,如果更多提交被添加到远程分支(由另一个团队成员或同事或其他人),它不会覆盖远程分支上的任何工作你)。它确保您不会通过强制推送来覆盖其他人的工作。我认为您围绕该命令的总体想法是正确的。如果远程分支与本地计算机上的远程分支具有相同的值-您将覆盖远程。如果它没有相同的值-它表示在您处