git的又一次实践和反思

1. 公司内部的gitlab上已经放上了项目的模板,代码完成后只需要push上来到同样的目录即可方便地使用dockerfile部署项目。

2. 由于本地之前是没有初始化仓库的,所以先git init

3. 然后git checkout -b dev

4. 其次,git remote add origin GitLabUrl

5. 为了防止pull覆盖掉本地文件,我先 cp -r MC_creative template,然后 git add template/, git commit -am "push local creative project to remote dev".

commit可以保存本地文件状态,避免文件覆盖导致的丢失。

6. 然后git pull下来了线上的信息

7. 发现需要git merge origin/dev dev, 然后就报错不允许合并无共同祖先的仓库. 这时就需要加上 --allow-unrelated-histories .终于合并了线上和线下版本。

8. 现在git push没问题了。

反思:一直在担心merge的时候线上线下分支的顺序是否有区别,会否导致旧的内容覆盖了新的内容。仔细想过后觉得不会,如果有共同修改的内容会报出冲突的。所以命令中参数的顺序是不要紧的。另外想到了合并时指定策略的用法,以后会很有用的。

上述过程的曲折主要源自本地先commit了一次,处于担心直接pull会不会导致本地修改丢失的考虑。仔细想想,应该是不会的。以后可以git pull,自动执行合并吧,哪怕你没有commit也没问题吧,这样再次commit和push就不会有问题了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Lesson 3: Using GitHub to Collaborate 3.1 Creating a GitH...
    赤乐君阅读 6,180评论 3 11
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 3,802评论 0 10
  • 首先确定电脑安装了git 输入git 会产生提示: 如果没有安装,那么就网上搜索下载完成安装. 可以使用命令行安装...
    彗星来的那一夜阅读 856评论 0 0
  • 三大区域: 工作区 → 缓存区 → 本地仓库 一 、 使用 git config 命令进行配置: git ...
    Manchangdx阅读 2,887评论 0 2
  • 20km——0km——161km 像之前的几年一样,打算写年终总结。 这是很特别的一年,很久之前就想着要好好写,不...
    未渡阅读 301评论 2 1