Git代码托管

1 准备材料

  • 在coding,github这些代码托管网站上申请一个账户。

  • Linux平台什么需要一个git,如ubuntu 需要 $ sudo apt-get install git,Windows平台需要下载一个Git环境。

​ 我申请的是coding,github虽然人数比较多,但是网速 很慢,而且有的时候某个地方网络就不好使了,可能github用了某个机构的服务器,而这个服务刚好被中国墙了,为了保证通畅和速度,国内的coding还是满足要求的。

​ 要我理解,coding,Github这些代码托管,都遵循Git的协议。这些网站只是提供服务器和接口。用Git的命令去访问这些coding,github这种代码托管的服务器。

​ 我以coding为例来记录一下,我的配置。

2 建立仓库

2.1申请仓库

​ 在coding的网站上需要建立一个仓库,这个仓库用来存储项目代码,建立项目好像就是简历仓库。建立完仓库的时候,会得到一个网址,这个网址后缀以.git结尾,需要记住这个仓库网址。

​ 创建项目之后,进入到这个项目的代码列表里,得到一个这样以git结尾的网址 https://git.coding.net/coarlqq/V01_F2808.git

​ 这个网址非常重要,后面在终端(windows是cmd)中要用。

​ 我这几天研究的是HTTPS协议下的,SSH协议还没有研究,到时候用熟练之后看看SSH。

2.2 本地建立仓库

​ 在网站上建立仓库之后,就要在本地建立对应的仓库(一个文件夹),这个仓库可以是你的工程的工作空间,也可以是你建立的新文件夹,最好还是代码的工作空间,Git最大的好处就是可以检测到只被改动的代码,每次更新之后push到服务器上是被改动的代码,也就是会对文件的版本进行检测。

​ 我这里把我的DSP开发环境的CCSv7的工作空间作为本地仓库和服务器进行同步。路径/home/delvis/workspace/CCSv7/,里面有我开发的工程代码。

​ S1:打开终端,切换到建立本地仓库的路径,那么我就要输入:

cd /home/delvis/workspace/CCSv7

​ S2: 在该路径下简历一个说明文档,README.md文件,用来说明项目的的介绍之类的。

touch README.md

​ S3: 初始化仓库

git init

​ 到此为止我们就建立了一个本地的仓库。

2.3 本地仓库和远程仓库建立连接

​ 新建立的远程仓库没有任何的代码,现在就需要把本地库和远程仓库建立连接,完成本地仓库和远程仓库的上传和下载,以及更新等等。

​ S1: 使用git的add命令将待传的文件加入到上传列表。第一次的时候先不要传那么多,先传README.md单个文件。

git add README.md

​ S2:更新说明(每一次修改都有个commit说明这个东西,你需要对这个说明进行修改,改一点点也可以,如果不该就没办法上传)

git commit -m "first commit"

​ S3:建立远程连接,后面从https开始就是你在第一节申请的git那个网站。

git remote add origin https://git.coding.net/coarlqq/V01_F2808.git

​ S4:使用push命令上传刚才加入列表的文件

git push -u origin master

​ S5: 如果是私有项目的话,需要按照提示输入用户名和密码。如下图所示,为从头到位的几个命令。

​ 推送了README.md文件之后,我们进入到coding的网站上,查看该项目的代码,就可以看到我们上传的md文件了。

2.4 批量上传整个文件夹

​ 上一步通过remote命令和远程库建立了连接,数据都存储在本地.git文件夹里面,下一次在对该仓库操作的时候就不需要进行remote连接,只需要commit和push两个命令,但是如果以后你在远程库对项目进行了名字的修改,就需要按照上面的方法重新配置。

​ 如何上传整个文件夹呢?

​ S1:添加整个文件包含文件夹内部文件所有的。(注意add 和 .之间有空格 add . 不是 add.)

git add .

​ S2:修改发布声明,命令一旦启用,就会自动调入VI编辑模式,

git commit -a

​ 这个声明必须有改动,否则不能上传,就算你改一个字符都是可以的, 输入i进入编辑模式,随便打一个字符然后按ESC进入命令模式,输入英文状态下的冒号:,输入wq,之后保存且退出。这时候所有待上传的文件都被选中了,这个时候git会自动检测本地和远程仓库代码版本的不同。

​ S3:上传刚才被add标记的文件

git push -u origin master

​ 同样会让你键入用户名和密码。

​ 然后就自己就开始上传了。

​ 回到网站上,就可以看到刚才上传的代码。

3 下载代码

使用clone命令下载已经上传的代码(更新到新的目录,如果是原目录就不要clone了

git clone https://git.coding.net/coarlqq/V01_F2808.git

也可以指定路径:

git clone https://git.coding.net/coarlqq/V01_F2808.git /home/delvis/什么什么路径

如果是本地仓库使用git pull origin master 同步,master是分支,会自动从服务器上更新,如果本地版本高于当前版本是不能pull成功的,只能重新clone到一个新的路径。

git 代码托管使用方法的更多相关文章

  1. 国内2大Git代码托管网站

    可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS社区.GitHub真正迷人的是它的创新能力与Geek精神,这些都是无法模仿的. ...

  2. oschina(开源中国)的Git代码托管平台使用教程

    oschina(开源中国)的Git代码托管平台使用教程 第一章 平台介绍 一. Git@OSC简介 开源中国的Git@OSC一个账号最多可以创建1000个项目,包含公有和私有,开源中国代码托管地址:h ...

  3. 程序员必须知道的几个Git代码托管平台

    上一篇博客中2015继续任性——不会Git命令,照样玩转Git我们简单的介绍了在VS2013中使用Git,和GitHub客户端的使用.那么使用Git到底有什么好处呢?最为明显的是支持Git代码托管的平 ...

  4. 程序员必须知道的几个Git代码托管平台(转)

    上一篇博客中2015继续任性——不会Git命令,照样玩转Git我们简单的介绍了在VS2013中使用Git,和GitHub客户端的使用.那么使用Git到底有什么好处呢?最为明显的是支持Git代码托管的平 ...

  5. 【转】程序员必须知道的几个Git代码托管平台

     一.VS2013中克隆远程Git仓库和SSH的配置 1.VS2013中克隆远程项目  首先感谢园友的评论和补充,今日又仔细看了一下,VS2013中是可以克隆项目的,只是我一直用的GitHub来克隆的 ...

  6. CentOS 6.8 搭建 Git 代码托管系统 Gitea

    [荐] Gitea:Git with a cup of tea,在 Gogs 基础上,发展起来的 自助 Git 服务系统.Gogs是一个个人维护的版本,而Gitea是一个社区组织维护的,版本迭代更新快 ...

  7. Git 代码版本还原方法

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,Git 代码版本还原方法 在使用 Git 管理自己的代码和资料时,难免会遇到意料 ...

  8. 程序员Git代码托管平台

    程序员Git代码托管平台 说到Git代码托管平台,首先推荐的是GitHub,好多好的开源项目都来自GitHub,但是GitHub只能新建公开的Git仓库,私有 仓库要收费,如果你做的是一个开源项目,可 ...

  9. 探讨 Git 代码托管平台的若干问题

    关于 Git 版本控制软件种类繁多,维基百科收录的最早的版本控制系统是 1972 年贝尔实验室开发的 Source Code Control System.1986 年 Concurrent Vers ...

随机推荐

  1. Objective-C #define 用法解析 (转)

    原文地址: http://blog.csdn.net/kindazrael/article/details/8108868 Objective-C : #define 用法解析 在 C 语言中,预处理 ...

  2. Mysql慢查询 [第二篇]

    一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog.General log.slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdu ...

  3. git 推送代码到远程端

    git init git add . git commit -m "first commit" git remote add origin "地址" git p ...

  4. <Android 基础(十五)> Alert Dialog

    介绍 The AlertDialog class allows you to build a variety of dialog designs and is often the only dialo ...

  5. JS的定时到底有多不准

    博客逐步迁移到,独立博客,原文地址,http://www.woniubi.cn/js_hide_tab_setinterval/ 我们一直都在说,JS的定时非常的不准确,但是很少有人去验证他,今天我就 ...

  6. Arcgis for Js之鼠标经过显示对象名的实现

    在浏览地图时,移动鼠标经过某个对象或者POI的时候,能够提示该对象的名称对用户来说是很实用的,本文讲述在Arcgis for Js中,用两种不同的方式来实现该效果. 为了有个直观的概念,先给大家看看实 ...

  7. Lucene学习入门——下载初识

    本文从官网下载Lucene开始,一步一步进行Lucene的应用学习研究.下载初识Snowball Stemmer 1.下载 (1)首先,去Lucne的Apache官网主页 http://lucene. ...

  8. 网页打开速度优化——HTTP请求头及响应头

    no-cache:不缓存过期的资源 no-store:不缓存 最近看了<图解HTTP>这本书,书上讲到了这两者的区别: no-cache从字面意义上很容易误解为不缓存,但是no-cache ...

  9. May 05th 2017 Week 18th Friday

    No matter what have happened today, the sun will just rise in the morning of tomorrow. 无论今天发生了什么,明天早 ...

  10. 爬虫第一篇基本库的使用——urllib

    在Python2中有urllib2和urllib3两个库来实现请求的发送,在Pyhon3中则统一为urllib. urilib包含以下4个模块 request:最基本的请求模块,可以用来实现请求的发送 ...