近两个月由于个人处于新环境、新项目的适应阶段,没怎么提笔写些文章。中间有好几个想法想记录下来分享,但受限于没有很好的时间段供自己总结思考(也可以总结为间歇性懒癌和剧癌发作),便啥也没有更新。借这个周末闲适的下午和明媚的阳光,决定把近来项目上的CI/CD(持续集成/持续交付)策略以及git分支模型和以前的项目做一下分析比较,希望对各位有所帮助,也能有所思考,尤其是那些期望搭建项目部署流水线或者想了解git分支模型的开发、运维人员。
继续阅读 »
说明
如果你想从别的git托管服务器哪里复制一份源代码到新的git托管服务器上,可以通过以下步骤实现。
git仓迁移
从原地址克隆一份裸版本,比如原版本托管在github上。
git clone --bare git://github.com/username/project.git
到新的git服务器上创建一个空的新项目,比如gitCafe服务器。
以镜像推送的方式,上传代码到gitCafe服务器上
cd project.git
git push --mirror git@gitcafe.com/username/newproject.git
删除本地之前克隆下来的裸版本
cd ..
rm -rf project.
继续阅读 »
昨天有朋友说让vsc支持react和es6太难配置了,我说直接用webpack吧,vsc仅仅用来敲代码就行了。之所以我这么说,因为我的vsc只是用来敲代码的,常用的git操作,依赖安装都是寄几在终端搞的。于是今天试了一下webpack,也踩了几脚坑,先让我擦干眼泪。
这里是这篇文章涉及到的源代码,如果需要运行可以直接跳到下面的最后一步生成。
如何配置
当你看到最终的是如何实现的时候,我其实是拒绝的,我宁可花长时间写的复杂点,但是很简单,绞尽脑汁也多写不了几行字。
创建目录
cd ~/Desktop
mkdir hello-react
cd hello-react
初始化npm
npm init -y
// 你也可以不
继续阅读 »
Update
[20170117] 将博客theme换成了Next
系统环境配置
要使用Hexo,需要在你的系统中支持Nodejs以及Git,如果还没有,那就开始安装吧!
安装Node.js
下载Node.js
参考地址:安装Node.js
安装Git
下载地址:http://git-scm.com/download/
安装Hexo
bash
$ cd d:/hexo
$ npm install hexo-cli -g
$ hexo init blog
$ cd blog
$ npm install
$ hexo g # 或者hexo generate
$ hexo s # 或者hexo server,可以在htt
继续阅读 »
有幸参与了3月18号在北京举办的DevOpsDays活动,这也是DevOpsDays这个全球性的DevOps聚会第一次落地中国。官方给出的数据是,大会吸引了将近1200名参会者。在此期间,也有机会见到了被业界称为“DevOps之父”的Patrick,以及《持续交付》的中文译者乔梁。从火热程度、嘉宾阵容以及票价上来说,这样的技术活动可算是较为盛大了,但是从一个开发者的角度来说说,会议中的“干货”才是我最期望看到的内容。本文将会从个人角度来回顾这个会议中的一些内容,并针对其中DevOps相关内容给出一些自己的认识,如有不正之处,还望各位读者指正。
继续阅读 »
检查SSH keys的设置
bash
$ cd ~/.ssh/
如果显示"No such file or directory",跳到第三步,否则继续。
备份和移除原来的SSH key设置
如果已经存在key文件,需要备份该数据并删除之
bash
$ ls
id_rsa id_rsa.pub known_hosts
$ mkdir key_backup
$ cp id_rsa* key_backup/
$ rm id_rsa*
生成新的SSH key
输入下面的代码,可以生成新的key文件,只需要使用默认的设置即可,当需要输入文件名的时候,回车即可
bash
$ ssh-keygen -t rsa -C "你的邮箱
继续阅读 »
MkDocs
MkDocs(官网、Github)是一款使用python开发的轻量级静态站点生成器,主要用于生成api文档,使用markdown撰写,使用yaml作为配置文件。
安装
首先需要安装python以及pip,然后使用pip即可安装MkDocs。
sudo apt-get install python
sudo apt-get install python-pip
sudo pip install mkdocs
安装完成之后,可以执行命令mkdocs --version查看所安装版本。
开始使用
执行以下命令新建一个工程。
mkdocs new demo
cd demo
生成的目录里结构如下:
p
继续阅读 »
git clone https://bitbucket.org/dubuqingfeng/docker-web-game.git
cd docker-web-game/
docker build -t 'web-game' .
docker run -t -i -d -p 80:80 web-game
继续阅读 »
记得之前写过一篇 win 下面使用 Git 的文章,今天写下一篇在 mac 下面的。
首先,需要在 mac 下安装 git.
mac git 的地址: http://code.google.com/p/git-osx-installer/ 由于可能这个网址访问
不了,所以需要使用源码安装。
安装好了 Git 之后,就开始设置 GitHub 连接了。
more
1, 检查是否存在 ssh keys
$ cd ~/.ssh
如果没有 .ssh 目录,请跳到第 3 步。
2, 如果有 .ssh 目录,请备份好你的 ssh key
$ ls
$ mkdir key_backup //创建备份文件夹
$ cp id_rsa
继续阅读 »
Gitlab CI 简介
Gitlab中集成了CI (Continuous Integration:持续集成) 和CD (Continuous Delivery:持续交付) 来方便用户测试、构建、部署代码。它是Gitlab的一部分,用户可以在 Gitlab.com 上免费使用,同时也包含在了开源的Gitlab社区版和付费的Gitlab企业版中。
Gitlab CI具有如下特性:
多平台:您可以在任何支持Go语言的平台上运行,例如:Unix、Windows、OSX等。
多语言:构建脚本是通过命令行驱动的,可以支持诸如Java、PHP、Ruby、C等任何语言。
稳定:您的构建操作可以运行在其他机器上,而不是Gitlab上。
并行构
继续阅读 »