Coding 初级教程(一)——用GitHub的GUI客户端对Coding的项目进行管理
- 一、概述
- 二、Git基本概念
- 1、有关存储的四个概念
- 2、分支(branch)
- 三、项目管理实战操作
- 1、安装 GHfW(GitHub for Windows)
- 2、在Coding上新建一个项目(新建远程仓库)
- 3、创建本地仓库
- 4、GHfW 的基本使用
配置: win7 + GitHub for Windows
目标读者:不了解Git,没用过GitHub,想使用Coding且不想使用命令行的同学。
前言:本文的宗旨是一切从简,只讲一些必须用到的步骤和概念。
一、概述
Coding.net 是一个新近的代码托管平台。类似于总所周知的GitHub。Coding的优点在于:一、中文界面;二、免费托管私人项目。缺点也有:项目的安全性还未受验证。总之有利有弊。
本文主要介绍如何用GHfW(GitHub for Windows)对Coding上的项目进行管理。
二、Git基本概念
在介绍GHfW对Coding项目管理之前,先介绍一下Git的基本概念。Git是一个版本控制系统。简而言之是管理代码用的。
1、有关存储的四个概念
- 工作目录(working directory):工作目录就是文件夹项目,它持有实际文件。
- 暂存区(the staging area):暂存区就像是一个索引,把项目文件都联系在一起。
- 本地仓库(local repository):切实进行提供版本控制的地方。
- 远程仓库(remote respository):放在网络上的仓库。
一个项目的纳入版本控制的过程大概就是工作目录->暂存区->本地仓库向上逐级递交的过程。当在项目中添加一个新的文件后,也就是在工作目录中添加了一个文件。此时暂存区并不知道有新的文件,于是把添加新文件的事告诉暂存区,这样新文件就被追踪(be tracked)了,同时这个文件被加入(add)暂存区。如果修改的是已经被追踪的文件,仍然需要在修改后将改动加入(add)暂存区。已经加入暂存区的新文件或者改动,可以提交(commit)到本地仓库,纳入版本控制系统。
当使用多个设备开发一个项目,或者多个人共同开发一个项目,远程仓库就派上用场了。远程仓库无非就是本地仓库的一个克隆(clone)。当本地仓库产生新的提交而产生变化之后,只要与远程仓库进行一下合并操作就可以让他们保持同步。
2、分支(branch)
每次将改动提交到本地仓库,本地仓库并不会保存文件被修改的部分,而是保存一份快照。
![]() |
|---|
| Git管理提交的方式 |
上
图的每一列代表一次提交,每个青蓝色的结点代表一个文件快照。假设本地仓库当前在Version1,在对文件A、C做改动之后提交到了本地仓库。那么本地
仓库会分别保存一份A、C的快照为A1、C1,并用一个链表分别指向快照A1、C1与原快照结点B,成为一次新的提交Version2。
分支的概念就是建立在这样的基础上的,分支是指向某次提交的指针。由于每个提交之间用一个链表相连接。因此一个分支就相当于是从某个提交对象往回看的历史。
![]() |
|---|
| 在develop分支上进行提交前 |
上图中的master与develop就是两个分支。每一次提交操作都是以某个分支为基础的,Git为了知道当前在哪个分支上工作,保存一个名为HEAD的指针。可以把HEAD想象为当前分支的别名。(develop前面的星号(*)就是用来区分当前分支与其他分支的。)
![]() |
|---|
| 在develop分支上进行提交后 |
当有新的提交产生时,HEAD会指向该新提交,也即当前分支指向新的提交。例如上图就是在develop分支上进行了一个次新的提交Version3。
三、项目管理实战操作
1、安装 GHfW(GitHub for Windows)
下载链接:https://windows.github.com/
安装过程一键完成。
2、在Coding上新建一个项目(新建远程仓库)
![]() |
|---|
| 新建项目页面 |
- README:一般项目中都会添加一个README文件对项目进行概述,以便一目了然地知道这个项目是做什么用的,如何使用等信息。README文件采用markdown语法书写。
- 开源许可证:定义该项目的传播方式,比如他人是否可以商业化使用该项目,他人是否可以随意传播、发布、更改该项目。
- .gitignore文件:该文件可以定义哪些文件不添加到仓库中,比如项目产生的临时文件。
3、创建本地仓库
打开GitHub客户端,打开的时候该客户端会要求输入GitHub的账户和密码,如果没有GitHub账户直接跳过就好了。
在Coding新建的项目页面左上角会有如下链接:
![]() |
|---|
| 远程仓库的链接地址 |
点中该链接并直接拖放到GitHub客户端窗口。在弹出窗口中设置本地仓库的路径。如此一来远程仓库就克隆到本地仓库了。
4、GHfW 的基本使用
![]() |
|---|
| GHfW界面说明 |
在工作目录中对文件进行增删改等操作后,在GHfW窗口勾选需要提交的修改。然后对这次提交进行描述后提交。最后再把修改同步到远程仓库。
Coding 初级教程(一)——用GitHub的GUI客户端对Coding的项目进行管理的更多相关文章
- Coding 初级教程(二)——上传已有项目
Coding 初级教程(二)——上传已有项目 [摘要:方针读者 :已具有 Coding.net 的账号. 本文首要先容若何把项目上传到 Coding.net 上. 分两种环境,一种是项目已归入到 gi ...
- Python图像处理库:Pillow 初级教程
Python图像处理库:Pillow 初级教程 2014-09-14 翻译 http://pillow.readthedocs.org/en/latest/handbook/tutorial.html ...
- [初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY
[初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY 发布者:sqqdugdu 时间:10-06 阅读数:2117 测试环境:RHEL 6.1,SecureCRT 5 ...
- 使用Pelican在Github(国外线路访问)和Coding(国内线路访问)同步托管博客
本文原文地址:使用Pelican在Github(国外线路访问)和Coding(国内线路访问)同步托管博客 介绍: Github Pages 禁用了百度爬虫,因此百度搜索引擎经常抓取不到在Github上 ...
- 如何通过Git GUI将自己本地的项目上传至Github
最近在学习node.js和react,顺便复习了下AngluarJS相关的东西,写了些小demo想放在GitHub上,之前仅限于只申请了GitHub账号从没用过,今天花半天时间查资料认真学习Githu ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置
前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...
- shellKali Linux Web 渗透测试— 初级教程(第三课)
shellKali Linux Web 渗透测试— 初级教程(第三课) 文/玄魂 目录 shellKali Linux Web 渗透测试—初级教程(第三课) 课程目录 通过google hack寻找测 ...
- Mac OS X Terminal 101:终端使用初级教程
Mac OS X Terminal 101:终端使用初级教程 发表于 2012 年 7 月 29 日 由 Renfei Song | 文章目录 1 为什么要使用命令行/如何开启命令行? 2 初识Com ...
- Window服务初级教程以及log4net配置文件初始化
Window服务初级教程:http://www.jb51.net/article/48987.htm 另外,配置log4net这个日志功能的时候需要初始化,不然会报没有初始化的错误,而且初始化的节点应 ...
随机推荐
- PostgreSQL and bloat
The bucardo project has released its nagios plugins for PostgreSQL and we can extract from them this ...
- MySQL DBA的个人修养
做为一个MySQL DBA,必须具有以下的素质: 一, 身体素质 DBA必须接收和处理各种报警,不论是中午在吃饭或者凌晨三点已经进入深度睡眠.接到报警需要立即进入应急状态,找到电脑,联上网络,快速定位 ...
- Java C# 加密解密类库
Bouncy Castle 是一种用于 Java 平台的开放源码的轻量级密码术包.它支持大量的密码术算法,并提供 JCE 1.2.1 的实现.因为 Bouncy Castle 被设计成轻量级的,所以从 ...
- 【转】PHP error_reporting() 错误控制函数功能详解
定义和用法: error_reporting() 设置 PHP 的报错级别并返回当前级别. 函数语法: error_reporting(report_level) 如果参数 level 未指定 ...
- redis操作
测试环境redis操作 cd /export/servers/redis-2.8.9/src/./redis-cli -n 0 keys keys(pattern):返回满足给定pattern的所有k ...
- 用原生javascript做的一个打地鼠的小游戏
学习javascript也有一段时间了,一直以来分享的都是一些概念型的知识,今天有空做了一个打地鼠的小游戏,来跟大家分享一下,大家也可以下载来增加一些生活的乐趣,下面P出代码:首先是HTML部分代码: ...
- C99新特性:变长数组(VLA)
C99标准引入了变长数组,它允许使用变量定义数组各维.例如您可以使用下面的声明: ; ; double sales[rows][cols]; // 一个变长数组(VLA) 变长数组有一些限制,它必须是 ...
- 转(linux shell)
请把如下字符串 stu494 e222f stu495 bedf3 stu496 92236 stu497 49b91 转为如下形式: stu494=e222f stu495=bedf3 stu496 ...
- Android Studio2.0 教程从入门到精通Windows版 - 安装篇
详见:http://www.open-open.com/lib/view/open1468118887690.html
- mysql查询表中的所有字段
select column_name, table_name from information_schema.columns where table_schema='yizhan' and colum ...





