zoukankan      html  css  js  c++  java
  • Coding 初级教程(一)——用GitHub的GUI客户端对Coding的项目进行管理

    一、概述


    配置: 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)

    每次将改动提交到本地仓库,本地仓库并不会保存文件被修改的部分,而是保存一份快照。

    此图共有有5个Version,每个Version下有三个快照结点,Version1下方A、B、C均为实线结点,Version2下方A、C结点为实线,B结点为虚线
    Git管理提交的方式

    上图的每一列代表一次提交,每个青蓝色的结点代表一个文件快照。假设本地仓库当前在Version1,在对文件A、C做改动之后提交到了本地仓库。那么本地仓库会分别保存一份A、C的快照为A1、C1,并用一个链表分别指向快照A1、C1与原快照结点B,成为一次新的提交Version2。

    分支的概念就是建立在这样的基础上的,分支是指向某次提交的指针。由于每个提交之间用一个链表相连接。因此一个分支就相当于是从某个提交对象往回看的历史。

    这是一个有向图,HEAD->*develop->Version2->Version1,master->Version3
    在develop分支上进行提交前

    上图中的master与develop就是两个分支。每一次提交操作都是以某个分支为基础的,Git为了知道当前在哪个分支上工作,保存一个名为HEAD的指针。可以把HEAD想象为当前分支的别名。(develop前面的星号(*)就是用来区分当前分支与其他分支的。)

    这是一个有向图,HEAD->*develop->Version3->Version2->Version1,master->Version3
    在develop分支上进行提交后

    当有新的提交产生时,HEAD会指向该新提交,也即当前分支指向新的提交。例如上图就是在develop分支上进行了一个次新的提交Version3。

    三、项目管理实战操作

    1、安装 GHfW(GitHub for Windows)

    下载链接:https://windows.github.com/

    安装过程一键完成。

    2、在Coding上新建一个项目(新建远程仓库)

    依次是项目名称、项目描述、是否公开、是否启用README.md,许可证,添加gitignore文件
    新建项目页面
    • README:一般项目中都会添加一个README文件对项目进行概述,以便一目了然地知道这个项目是做什么用的,如何使用等信息。README文件采用markdown语法书写。
    • 开源许可证:定义该项目的传播方式,比如他人是否可以商业化使用该项目,他人是否可以随意传播、发布、更改该项目。
    • .gitignore文件:该文件可以定义哪些文件不添加到仓库中,比如项目产生的临时文件。

    3、创建本地仓库

    打开GitHub客户端,打开的时候该客户端会要求输入GitHub的账户和密码,如果没有GitHub账户直接跳过就好了。
    在Coding新建的项目页面左上角会有如下链接:

    https://coding.net/demo/php-wordpress.git
    远程仓库的链接地址

    点中该链接并直接拖放到GitHub客户端窗口。在弹出窗口中设置本地仓库的路径。如此一来远程仓库就克隆到本地仓库了。

    4、GHfW 的基本使用

    整个界面大概分为 新项目添加、项目列表、当前分支、文件提交、未同步到远程仓库的文件列表、已同步的提交历史、以暂存的文件、同步到远程仓库、设置等九个部分
    GHfW界面说明

    在工作目录中对文件进行增删改等操作后,在GHfW窗口勾选需要提交的修改。然后对这次提交进行描述后提交。最后再把修改同步到远程仓库。


    后记:仅仅通过GUI的方式管理项目,就只能使用到git的一部分功能,并且在误操作之后的反馈较少。因此十分建议读者进一步学习有关命令行方式的Git管理。


    参考文章:Coding 代码管理快速入门




    知识共享许可协议
    作者:tangyikejun
    本文采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

  • 相关阅读:
    数据库字段太多,批量快速建立实体类方法(适合大量字段建立实体类)
    SQL service 中的 ”输入SQL命令窗口“ 打开了 “属性界面” 回到 ”输入SQL命令窗口“
    计算机软件编程英语词汇集锦
    编程常用英语词汇
    svn上传和下载项目
    当启动tomcat时出现tomcat setting should be set in tomcat preference page
    Implicit super constructor Object() is undefined for default constructor. Must define an explicit constructor
    eclipse中选中一个单词 其他相同的也被选中 怎么设置
    Spring Boot的@SpringBootApplication无法引入的问题
    最全的SpringCloud视频教程
  • 原文地址:https://www.cnblogs.com/tangyikejun/p/3948322.html
Copyright © 2011-2022 走看看