|  |      1bombless      2017-02-20 12:07:21 +08:00 | 
|  |      2skydiver      2017-02-20 12:21:21 +08:00 弄了个别名呗 alias.push=push -f | 
|  |      3penjianfeng      2017-02-20 12:25:10 +08:00 看你同事是命令行下操作还是图形客户端,图形客户端貌似会默认加上-f,至少我看到同事有干过这种事,拉代码的时候发现的,发现她的 sourcetree 执行的是 push -f | 
|  |      4mahone3297      2017-02-20 12:31:49 +08:00 force 就 force 咯,当然不能让他 push 到公共的分支,每个人开发,不是都拉出一个新的分支来做么? | 
|  |      5xiaket      2017-02-20 12:38:12 +08:00 锁 branch 是美德 | 
|  |      6malkavia OP @bombless 要是 git 的 bug 就没办法了..我叫他换个版本的 git 试一下 @penjianfeng 我刚刚在他电脑上用命令行操作的,没加-f ,也直接就 force 了... @skydiver 同事一直用的是 eclipse 的插件,应该不会弄别名 @mahone3297 同事在隔壁团队,刚刚由 svn 转到 git 上来,团队负责人都还不太熟,所以用的是 Centralized Workflow | 
|  |      7yufz      2017-02-20 13:27:18 +08:00 我在 Windows 下 用了 Bash on Ubuntu on Windows 然后装了 oh-my-zsh,  git psuh 会把本地所有分支都推一遍,某一次就加了-f ,然后我就哭了😂,没找到问题出在哪 | 
|      8yov123456      2017-02-20 13:32:35 +08:00 via iPhone git reflog 找回来啊… | 
|  |      9h3nng      2017-02-20 13:45:13 +08:00 master 分支搞权限啊,其他人只能 push 到分支 | 
|  |      10guokeke      2017-02-20 13:47:45 +08:00 fork 一下更安全 | 
|      11qianguozheng      2017-02-20 14:00:31 +08:00 这年头“同事”真的,哈哈 | 
|  |      12penjianfeng      2017-02-20 14:29:14 +08:00 @malkavia 话说 force 就 force 呗,各自在各自的分支上开发就行了 | 
|  |      13malkavia OP @penjianfeng  @yov123456 找回来是已经找回来了,但就是想弄清楚,为啥会在命令行敲个 git push ,会直接带上-f @guokeke 确实,要推 fork 了 @qianguozheng 他们团队之前都是用 svn ,年后才切到 git 上来,我 git 用的相对比较多而已,人家有问题向我求助也是尽量帮着解决一下 | 
|  |      14cxbig      2017-02-20 15:07:22 +08:00 刚从 SVN 转过来不是理由 SVN 是 Centralized Workflow ,难道你们 Git 也是这么用?我是不是可以理解成你们都是 master 单线推进? 一个简单的 Git-flow 团队都搞不定,你是不是该考虑换一个工作了。。。 | 
|  |      15penjianfeng      2017-02-20 15:41:00 +08:00 @malkavia 楼上不是有人说了么,看下是不是设置了 alias,还有就是你们用 git 都没个 gitflow?那还不如还退回 svn 呢,你可以给那个团队提个意见,如果有权限,可以给他们培训下,这种事情是极其坑爹的 | 
|      16Busy      2017-02-20 17:35:30 +08:00 善用分支,看团队大小与项目复杂性,来决定各自的流程与规范的管理模型 | 
|  |      17O3YwA1ENkb7i35XJ      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` 看后面的值, 然后与上面网页中的解释对应一下,你就知道为啥了. | 
|      18yov123456      2017-02-20 18:06:26 +08:00 via iPhone sourcetree 在 push 的窗口有个选项叫强行推送,是不是勾了… | 
|  |      20acumen      2017-02-20 23:49:59 +08:00 via iPhone fork 一个自己的仓库,管理一个 upstream 和 origin 两个 remote repo ,远程有更新就 pull upstream ,再 push origin ,自己 fork 的仓库始终和上游仓库同步,开发的时候就建 branch ,提交代码就发 p-r ,方便 review ,安全又省心 |