赞
踩
最近一小老弟问我怎么将idea中的项目上传到gitee,他说网上看的都有坑,啊这。。。好吧,本篇文章来实践一下
vcs->import into Version control->create git repository
这一步,我看很多博客都说直接执行命令git push -f origin master强制push,其实这样做有很大的风险;一定要merge哈,保持和远程仓库一致才对
每一步操作都有说明,按操作来就好
echo@echodeMacBook-Pro test-upload % git pull #push失败是因为远程仓库有东西没有拉下来,.gitignore和LICENSE文件 remote: Enumerating objects: 4, done. remote: Counting objects: 100% (4/4), done. remote: Compressing objects: 100% (4/4), done. remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 0 展开对象中: 100% (4/4), 4.93 KiB | 1.23 MiB/s, 完成. 来自 https://gitee.com/viEcho/test-upload * [新分支] master -> origin/master 当前分支没有跟踪信息。 请指定您要合并哪一个分支。 详见 git-pull(1)。 git pull <远程> <分支> 如果您想要为此分支创建跟踪信息,您可以执行: git branch --set-upstream-to=origin/<分支> master echo@echodeMacBook-Pro test-upload % git branch --set-upstream-to=origin/master #按提示执行此命令,表示和远端保持一致 分支 'master' 设置为跟踪 'origin/master'。 echo@echodeMacBook-Pro test-upload % git pull origin master #拉取远端主分支的文件 来自 https://gitee.com/viEcho/test-upload * branch master -> FETCH_HEAD 提示:您有偏离的分支,需要指定如何调和它们。您可以在执行下一次 提示:pull 操作之前执行下面一条命令来抑制本消息: 提示: 提示: git config pull.rebase false # 合并 提示: git config pull.rebase true # 变基 提示: git config pull.ff only # 仅快进 提示: 提示:您可以将 "git config" 替换为 "git config --global" 以便为所有仓库设置 提示:缺省的配置项。您也可以在每次执行 pull 命令时添加 --rebase、--no-rebase, 提示:或者 --ff-only 参数覆盖缺省设置。 致命错误:需要指定如何调和偏离的分支。 echo@echodeMacBook-Pro test-upload % git config pull.rebase false #说明有文件没有同步,配置为合并 echo@echodeMacBook-Pro test-upload % git pull origin master #在拉一次,发现是历史存在的和当前本地分支新增关联前就有的 来自 https://gitee.com/viEcho/test-upload * branch master -> FETCH_HEAD 致命错误:拒绝合并无关的历史 echo@echodeMacBook-Pro test-upload % git pull origin master --allow-unrelated-histories #表示允许没关联的文件也同步拉取 来自 https://gitee.com/viEcho/test-upload * branch master -> FETCH_HEAD Merge made by the 'ort' strategy. .gitignore | 23 +++++++++++++++++++ LICENSE | 201 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 224 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE echo@echodeMacBook-Pro test-upload % git push #merge完,push 就ok了 枚举对象中: 6, 完成. 对象计数中: 100% (6/6), 完成. 使用 16 个线程进行压缩 压缩对象中: 100% (4/4), 完成.
执行拉取远端文件时,要合并;直接输入
:wq! #代表确认合入并退出vim编辑模式
--------------------------------分割线---------------------------------
号外:接着以前博客,新增点内容
tips: 最近在家准备面试,整理了个人博客;也准备写点代码,之前个人本地代码都是上传到gitee上了,自从搭了梯子后访问github也不成问题了;一个想法浮现在我的脑海里,能不能即把项目上传到gitee又把项目上传到github呢?开整吧
这里需要说明一下,github现在默认分支是main,所以新建仓库之前如果要修改默认分支为master;得去设置一下:
点击个人github头像->Settings->Repositories
,在Repository default branch中填master然后update这样新建的仓库默认就是master是默认分支了
另外在github上新建项目时,不要选择新增额外的readme,ignore,LICENSE文件,因为已经有的项目很有可能有这样的文件了,若新建了合并的时候将会有冲突。
然后push,选择github,然后不出意外又要出意外了;push被拒绝了
不要慌,我们push前先pull合并一下github上master的仓库,虽然新增的仓库毛也没有但就是要这样操作一下,emm怪怪的
git pull origin master --allow-unrelated-histories
#然后就会出现要你合并的操作,键入:wq!回车保存即可
合并完,然后我们再push一遍发现就ok了;
小结:好了,至此我们将上传到gitee的项目也同步上传到了github;愉快的玩耍去吧
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。