git如何推送到裸存储库

推送到使用 --bare 标志创建的存储库是非常安全的,因为它不允许编辑文件并向该存储库提交更改。
建议创建中央存储库作为裸存储库,否则推送到非裸存储库可能会覆盖更改。

定义

git push 命令将本地仓库的内容上传到远程仓库。
推送与获取相反。
如果 git fetch 将内容导入本地分支,则 git push 将其导出到远程分支。

Git push用法

git push 命令通常用于将上传的本地更改发布到中央存储库。
在本地存储库中进行更改后,我们可以 git push 与团队其他成员共享修改。
git pushcommand 是“同步”过程中涉及的命令之一。
这些命令适用于使用 git remote 命令配置的远程分支。

提交使用 git push 上传,使用 git fetch 和 git pull 下载。
在两种情况下进行更改后,都会使用 git merge 来集成更改。

下图显示了本地 master 通过中央存储库的 master 和通过调用 git push oroirn master 发布更改的进展。

git如何删除远程分支

这是删除远程分支的示例。
以冒号为前缀的 branch_name 到 git push 将删除远程分支:

git branch -D branch_name
git push oroirn :branch_name
git push 推送

git push常用选项

git push <remote> <branch>将指定的分支推向%26LT;远程%26GT;必要的提交在目标存储库中创建本地分支。
git push <remote> --force即使它导致不快进合并也会强制推动。确保在使用--Force选项之前,无人拔出了提交。
git push <remote> --all将所有本地分支推送到远程存储库。
-git push <remote> --tags将来自本地分支的标记按到远程存储库。 --all不会推动标签。

git强制推送(push)

如果中央存储库的历史记录与本地存储库的历史记录不匹配,Git 可以拒绝推送请求。
在这些情况下,我们应该拉取远程分支并将其合并到本地存储库中,然后再次推送。
--force 标志匹配远程存储库的分支和本地分支,从上次拉取中清除上游更改。
当共享提交不正确并使用 git commit --amend 或者交互式 rebase 修复时使用强制推送。
在使用 --force 选项之前,请确保没有人拉取提交。
交互式 rebase 也是在共享之前清理提交的好方法。
git commit --amend 选项更新之前的提交。

当提交被修改时 git push 将失败,因为 Git 将接受修改后的提交和远程提交作为分歧的内容。
其中必须使用 --force 来推送修改后的提交。

# make changes to a repo and git add
git commit --amend
# update the existing commit message
git push --force oroirn master
日期:2020-06-02 22:16:33 来源:oir作者:oir