如何在具体分支中配置 git Push 命令的一些确认?我有生产分支,有时我忘记了我在生产分支中并且不推送这些更改。
有什么区别:
$ git remote add origin git@github.com:yourname/yourproject.git
$ git config remote.origin.push refs/heads/master:refs/heads/master
$ git push
Run Code Online (Sandbox Code Playgroud)
和:
$ git remote add origin git@github.com:yourname/yourproject.git
$ git push origin master -u
Run Code Online (Sandbox Code Playgroud)
第二个版本是否比第一个版本更新更短,还是有其他差异?
从Git 1.7.0开始,您可以使用该--set-upstream选项git push.根据git push手册:
Run Code Online (Sandbox Code Playgroud)-u, --set-upstream For every branch that is up to date or successfully pushed, add upstream (tracking) reference, used by argument-less git-pull(1) and other commands. For more information, see branch.<name>.merge in git-config(1).
我应该在 GitHub 上处理我客户的项目,更改将在他的存储库中。我试图遵循 fork 示例,但只能将更改转到我的帐户存储库?
在 GitHub 上的示例中,为了 fork 一个 repo,他们创建了一个远程调用upstream以指向原始项目。我可以从中获取更改
get fetch upstream
git merge upstream/master
Run Code Online (Sandbox Code Playgroud)
我能够通过以下方式将更改上传到我的回购中
git push –u origin
Run Code Online (Sandbox Code Playgroud)
将我的更改复制到我的帐户。
我试过
git push –u upstream
Run Code Online (Sandbox Code Playgroud)
将我的更改推送到原始帐户。我收到以下错误
你不能推送到 git://github.com.octocat/SpoonKnife.git 使用 git@github.comoctocat/Spoon0-Knife.git
我在RedHat OpenShift上创建了一个WildFly盒式磁带,并将一些小代码更改推送到我最初的Git存储库的主分支(ssh://account@host.rhcloud.com/~/git/wildfly8.git/).我遇到了推送到存储库需要很长时间.
如何更快地推送到我的存储库?是否有正在运行的Git预提交钩子?
我的命令如下:
git push --porcelain --progress --recurse-submodules=check origin refs/head/master:refs/heads/master
Run Code Online (Sandbox Code Playgroud) 我有三个分支dev test master。
最初我只有 dev 分支可以使用,所以我使用了这个
git push origin dev
但稍后我将基于 env 拥有不同的分支,并将从各自的分支进行部署。Buntill develeopemet 是否有可能test并且master始终与 dev 具有相同的头脑
或者换句话说
git push origin dev|test|master
所以我可以推送到我单个命令的所有分支,然后我可以合并选择性提交。我的意思是所有其他分支都与 dev 相同
我将提交推送到远程存储库,我想撤消该提交.
要撤消我在我的本地存储库中的提交
git reset --hard prev_commit_hash
(顺便说一句,这是正确的方法吗?)
然后我试着推,然后失败了,因为我现在的分支的尖端落后于它的远程对手,正如我所料.
问题是:执行硬/强制推送的正确方法是什么?
编辑:
我查看了一些其他类似问题,但他们有点老了.建议的解决方案是使用git revert.我看到最近用户评论说这个解决方案对他们不起作用.
据我所知,藏匿处是本地的,并不打算被推到远程回购.
有时我的工作还没有准备好,但是我必须以某种方式与其他工作人员分享,或者我自己从不同的工作站访问.
使用git模拟某种"远程存储"或使用git进行像我刚刚描述的工作流程的最佳方法是什么?
上下文:我(错误地)使用 Git 不是为了版本控制,而是为了记录文件之间的关系。Git 的内部数据结构(基本上是一个对象图)正是我需要的(加密哈希等),并且有很多非常好的工具来操作数据。
到目前为止,我无法做的一件事是将整个图形推送到远程存储库。据我了解,git push只作用于refs,而不作用于objects。是否有一种简单的方法可以将所有对象(提交、树、blob)推送到远程,或者我是否必须branch首先在每个提交上添加一个 ref(例如 a ),然后推送所有分支,然后删除所有分支(本地和远程)?
如果我尝试从 Azure DevOps GIT 存储库中删除分支,则需要强制推送权限,根据显示的错误消息:
然而,允许“强制推送”也允许重写历史。这甚至在配置这些权限的地方明确说明。
在我对 Git 的理解中,分支只不过是更改的书签/快捷方式。在某种程度上,它们是一种特殊的标签。如果这些在合并期间被丢弃,则不需要强制右推。
我想授权人们能够删除分支,而不赋予他们扰乱历史的权利。他们不应该能够编辑/删除实际的更改集,但他们可以对这些特殊类型的标签执行所有操作。我该如何配置呢?
或者我是否误解了通过允许强制推送可以重写的历史量?我想要保留的只是谁签入了哪些代码更改。允许武力推动可以打破这段历史吗?
git-push ×10
git ×9
azure-devops ×1
git-branch ×1
git-config ×1
git-pull ×1
git-remote ×1
git-stash ×1
github ×1
openshift ×1
wildfly ×1