首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
宝塔
V2EX  ›  git

git push 默认使用了 -f ,是哪里配置的吗?

  •  
  •   malkavia · 2017-02-20 12:05:32 +08:00 · 4334 次点击
    这是一个创建于 1001 天前的主题,其中的信息可能已经有所发展或是发生改变。
    同事没 pull 就 push 了,关键的是还 push 上去了,冲掉了几十条 commit

    我刚刚过去看了一下,直接使用 git push 居然会默认使用 forced update

    请问是哪里可以配置的吗?还真没见过这种情况了
    20 回复  |  直到 2017-02-20 23:49:59 +08:00
        1
    bombless   2017-02-20 12:07:21 +08:00
        2
    skydiver   2017-02-20 12:21:21 +08:00
    弄了个别名呗 alias.push=push -f
        3
    penjianfeng   2017-02-20 12:25:10 +08:00
    看你同事是命令行下操作还是图形客户端,图形客户端貌似会默认加上-f,至少我看到同事有干过这种事,拉代码的时候发现的,发现她的 sourcetree 执行的是 push -f
        4
    mahone3297   2017-02-20 12:31:49 +08:00
    force 就 force 咯,当然不能让他 push 到公共的分支,每个人开发,不是都拉出一个新的分支来做么?
        5
    xiaket   2017-02-20 12:38:12 +08:00
    锁 branch 是美德
        6
    malkavia   2017-02-20 13:10:14 +08:00
    @bombless 要是 git 的 bug 就没办法了..我叫他换个版本的 git 试一下

    @penjianfeng 我刚刚在他电脑上用命令行操作的,没加-f ,也直接就 force 了...

    @skydiver 同事一直用的是 eclipse 的插件,应该不会弄别名

    @mahone3297 同事在隔壁团队,刚刚由 svn 转到 git 上来,团队负责人都还不太熟,所以用的是 Centralized Workflow
        7
    jinyang656   2017-02-20 13:27:18 +08:00
    我在 Windows 下 用了 Bash on Ubuntu on Windows 然后装了 oh-my-zsh, git psuh 会把本地所有分支都推一遍,某一次就加了-f ,然后我就哭了😂,没找到问题出在哪
        8
    yov123456   2017-02-20 13:32:35 +08:00 via iPhone
    git reflog 找回来啊…
        9
    h3nng   2017-02-20 13:45:13 +08:00
    master 分支搞权限啊,其他人只能 push 到分支
        10
    guokeke   2017-02-20 13:47:45 +08:00
    fork 一下更安全
        11
    qianguozheng   2017-02-20 14:00:31 +08:00
    这年头“同事”真的,哈哈
        12
    penjianfeng   2017-02-20 14:29:14 +08:00
    @malkavia 话说 force 就 force 呗,各自在各自的分支上开发就行了
        13
    malkavia   2017-02-20 14:49:37 +08:00
    @penjianfeng @yov123456 找回来是已经找回来了,但就是想弄清楚,为啥会在命令行敲个 git push ,会直接带上-f

    @guokeke 确实,要推 fork 了

    @qianguozheng 他们团队之前都是用 svn ,年后才切到 git 上来,我 git 用的相对比较多而已,人家有问题向我求助也是尽量帮着解决一下
        14
    cxbig   2017-02-20 15:07:22 +08:00
    刚从 SVN 转过来不是理由
    SVN 是 Centralized Workflow ,难道你们 Git 也是这么用?我是不是可以理解成你们都是 master 单线推进?
    一个简单的 Git-flow 团队都搞不定,你是不是该考虑换一个工作了。。。
        15
    penjianfeng   2017-02-20 15:41:00 +08:00
    @malkavia 楼上不是有人说了么,看下是不是设置了 alias,还有就是你们用 git 都没个 gitflow?那还不如还退回 svn 呢,你可以给那个团队提个意见,如果有权限,可以给他们培训下,这种事情是极其坑爹的
        16
    Havee   2017-02-20 17:35:30 +08:00
    善用分支,看团队大小与项目复杂性,来决定各自的流程与规范的管理模型
        17
    xqin   2017-02-20 17:44:47 +08:00   ♥ 1
    @jinyang656

    https://git-scm.com/docs/git-config#git-config-pushdefault

    `git config -l | grep push.default` 看后面的值, 然后与上面网页中的解释对应一下,你就知道为啥了.
        18
    yov123456   2017-02-20 18:06:26 +08:00 via iPhone
    sourcetree 在 push 的窗口有个选项叫强行推送,是不是勾了…
        19
    BoBoy   2017-02-20 19:30:35 +08:00 via iPhone
    @yov123456 不是立即?
        20
    acumen   2017-02-20 23:49:59 +08:00 via iPhone
    fork 一个自己的仓库,管理一个 upstream 和 origin 两个 remote repo ,远程有更新就 pull upstream ,再 push origin ,自己 fork 的仓库始终和上游仓库同步,开发的时候就建 branch ,提交代码就发 p-r ,方便 review ,安全又省心
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   897 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 20:57 · PVG 04:57 · LAX 12:57 · JFK 15:57
    ♥ Do have faith in what you're doing.