摘要:
创建带工作区的版本库 在开始一个新项目时,首先就要创建并初始化代码库。如果是在本机的工作目录中,那么: 也就够用了。如果想要初始化的版本库不在当前目录,需要为 git init 命令指定版本库所在的目录: 执行完命令,在当前目录或您指定的目录下会创建一个名为 .git 的目录,这就是版本库了。 带工 阅读全文
摘要:
最近更新了一个下载小工具,主要提升了下面几点: 1. 在一些分公司的局域网中,连接不上外网 2. 服务器上的文件更新后,下载到的还是更新前的文件 3. 没有下载进度提示 4. 不能终止下载 下面和大家分享一些心得。 鉴于各种复杂的网络环境,笔者决定采用不同的编程接口进行下载尝试,以增加程序的可用性。 阅读全文
摘要:
前面我们已经创建了TeamCity Server 和一个 Agent,接下来我们为一个.net core 控制台程序配置自动化的编译。 创建 .net core 项目 我们在本地创建一个简单的 .net core demo程序 hello (这里假设您已经安装了.net core 的 SDK): 如 阅读全文
摘要:
以太网的数据链路层 在数据链路层,以太网负责以太网编址,这通常称为硬件编址或 MAC 编址。以太网还负责把来自网络层的分组封装成帧。 以太网编址 以太网编址使用固化在每个以太网网卡(NIC)中的 MAC (Media Access Control,介质访问控制)地址。MAC (硬件)地址长 48 位 阅读全文
摘要:
Overview OSI规范的作用之一就是帮助在不同的主机之间传输数据。 OSI模型包含7层,它们分为两组。 上面3层指定了终端中的应用程序如何彼此通信以及如何与用户交流; 下面4层指定了如何进行端到端的数据传输。 上三层对联网和网络地址一无所知,那是下面4层的职责。 下面4层定义了数据是如何通过物 阅读全文
摘要:
在编程的过程中,我们会遇到很多需要异步操作的场景。比如要下载一个文件,如果使用同步的方式进行下载,那么UI操作就会被卡住,这时最好能够使用异步的方式进行下载。在C#中,很早就开始支持异步的操作了,只不过早期的方法写起来有些麻烦。到了C# 5.0的时候,直接添加了两个关键字:async 和 await 阅读全文
摘要:
有时候我们需要在程序中执行另一个程序的安装,这就需要我们去自定义 msi 安装包的执行过程。 需求 比如我要做一个安装管理程序,可以根据用户的选择安装不同的子产品。当用户选择了三个产品时,如果分别显示这三个产品的安装交互 UI 显然是不恰当的。我们期望用一个统一的自定义 UI 去取代每个产品各自的 阅读全文
摘要:
笔者在前文中介绍了 TeamCity Server 的安装过程,本文介绍在 Ubuntu Server 14.04 中安装 TeamCity Agent。Ubuntu Server 上已经创建了用户 tcuser。 安装JDK 请参考笔者之前的博文《Ubuntu14.04安装JDK》安装 JDK。 阅读全文
摘要:
本文介绍在 Ubuntu Server 14.04 中安装 TeamCity Server 10.0.1。Ubuntu Server 上已经创建了用户 tcuser。TeamCity 的安装包为 TeamCity-10.0.1.tar.gz,使用 Postgresql 9.4 代替 TeamCity 阅读全文
摘要:
在C#程序中,经常会有一些耗时较长的CPU密集型运算,如果直接在 UI 线程执行这样的运算就会出现UI不响应的问题。解决这类问题的主要途径是使用多线程,启动一个后台线程,把运算操作放在这个后台线程中完成。但是原生接口的线程操作有一些难度,如果要更进一步的去完成线程间的通信就会难上加难。 还好 .NE 阅读全文