作者:荒原之梦

Git简介:
Git是一款分布式版本控制系统,可用于项目的版本管理。Git可以管理本地代码仓库与远程代码仓库间的连接以及进行版本控制,使得我们可以在本地离线进行修改等操作,之后再将代码提交到远程代码仓库,方便团队协作。

Git官网:

https://git-scm.com/

Git百度百科:

https://baike.baidu.com/item/GIT/12647237?fr=aladdin

Git Github主页:

https://github.com/git

在使用Git与远程仓库进行代码交互的时候会遇到一些操作动作,如“克隆”、“推送”和“拉取”等,这些动作的英文名称以及对应的含义如下:

名称 功能
Clone(克隆) 将远程仓库里面的代码复制一份到本地。
Push(推送) 将代码推送到远程仓库中。
Fetch(获取) 获取远程仓库中发生变化的代码。
Merge(合并) 将远程仓库中发生变化的代码与本地存储的没有发生变化的代码合并以使本地仓库和远程仓库代码保持一致。
Pull(拉取) 功能等同于“fetch+merge”.
Commit(提交) 将修改推送到本地仓库中。
Fork 将代码从别人的远程仓库复制到自己的远程仓库。
Pull request 将自己远程仓库中的代码复制一份到别人的远程仓库(该操作将会询问对方是否接受)。

如果要将修改Push到别人的远程仓库,必须首先Fork别人的代码到自己的远程仓库,修改完再Push. 而不能直接Clone别人的代码到本地,这样再想Push到别人的远程仓库是不行的。另外,经实践发现,直接Clone自己的远程仓库到本地再Push到自己的远程仓库也是不行的。

具体步骤如下:

1 下载并安装Git

如无自定义需要,使用默认配置安装即可。

2 在Coding上添加一个项目

在我的这篇文章中(使用Coding Pages托管网站 http://zhaokaifeng.com/?p=509)有在Coding上添加一个项目的介绍,可以参考。

3 配置SSH

生成SSH公钥,输入:

ssh-keygen -t rsa -C XXX@XXX.XXX

注:XXX@XXX.XXX为注册Coding时使用的邮箱。
之后会提示输入用于保存公钥的文件:

Enter file in which to save the key (/c/Users/Master/.ssh/id_rsa):

这里直接回车,使用默认的文件id_rsa保存即可。
接下来会提示:

Enter passphrase (empty for no passphrase):

这里也是直接回车,不使用密码加密公钥文件。
之后提示:

Enter same passphrase again:

再次回车。
之后会看到公钥成功创建的提示:

Your public key has been saved in /c/Users/Master/.ssh/id_rsa.pub.

查看公钥,输入:

cat /c/Users/Master/.ssh/id_rsa.pub

将公钥复制下来,登陆Coding,在我的账户->SSH公钥处粘贴刚才生成的公钥,之后点击添加

如果粘贴后公钥末尾有空白行或空格要删掉它们。

4 创建本地代码仓库并Clone远程代码仓库

在本地新建一个文件夹A。

“A”为远程仓库的仓库名

进入A,右键点击Git Bash Here.
初始化仓库,输入:
git init
之后会在A里面产生一个.git隐藏文件夹。
Clone远程仓库(远程仓库中没有代码也可以这样执行),在本地仓库中输入:

git clone A https://git.coding.net/XXXXXX.git

“A”为远程仓库的仓库名

其中https://git.coding.net/XXXXXX.git 为远程仓库的HTTPS地址,可以在项目的代码标签处找到:

图 1

之后会弹出登录凭证验证窗口:

图 2

输入Coding的用户名(一般为邮箱)和登陆密码点击确定即可。
如果远程仓库里面有代码,Clone执行完毕后我们就可以在本地看到远程仓库中的代码了。

5 将本地代码仓库的更改推送到远程代码仓库

现在假设我们在本地代码仓库新建了一个文件1.txt. 下面演示如何将这个更改推送到远程代码仓库:
进入本地代码仓库中,查看代码状态,输入:

git status

这时Git会用红色字体显示1.txt,说明这个文件是和远程仓库中的内容不一致的。
将所有更改都加入到暂存区域,准备上传:

git add .

也可以使用

git add 文件名

指定加入到暂存区域的文件。
但是当我们输入:

git commit

准备提交代码时,回车却出现了下面的警示信息:

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
git config --global user.name "Your Name" to set your account's default identity.
Omit --global to set the identity only in this repository.

根据上述提示,输入:

git config --global user.email "you@example.com"

回车。
输入:

git config --global user.name "Your Name"

回车。
再次执行:

git commit

这次没有出现错误提示,而是打开了一个文本。按下i开始输入所提交代码的备注,之后保存并退出。
之后输入:

git push origin master

这时我们在浏览器上再刷新Coding账号中的该项目就可以看到刚才推送过来的1.txt文件了。
输入:

git status

会看到:

nothing to commit, working directory clean

至此,本地更改已经全部推送到远程仓库。
原文链接:http://zhaokaifeng.com/?p=512


End
My Website:http://zhaokaifeng.com/

Windows上使用Git托管代码到Coding的更多相关文章

  1. windows上配置git

    windows上配置git1.下载mysisigit进入http://msysgit.github.io/,下载,安装,下一步下一步即可. 2.下载tortoisegit进入http://downlo ...

  2. windows上使用git

    开始的时候同事只给了一个地址,类似这样:git@111.111.1.1:ABCDEF (1)如何在Windows上使用Git 有一篇博客不错:http://www.tuicool.com/articl ...

  3. Windows上右键git菜单出来的原因

    Windows上右键git菜单出来的原因 Git下载地址https://code.google.com/p/msysgit/downloads/list?q=full+installer+offici ...

  4. 在windows上搭建git server Gitblit

    在Windows上搭建Git Server   第1步:下载Java并安装Java.我这里下载的是jdk1.7.0_79 第2步:配置Java环境变量 右键” 计算机” => ”属性” => ...

  5. Git学习系列之Windows上安装Git详细步骤(图文详解)

    前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windo ...

  6. Git学习系列之Windows上安装Git之后的一些配置(图文详解)

    不多说,直接上干货! 前面博客 Git学习系列之Windows上安装Git详细步骤(图文详解) 第一次使用Git时,需要对Git进行一些配置,以方便使用Git. 不过,这种配置工作只需要进行一次便可, ...

  7. [Git]在Windows上安装Git

    Windows下要使用很多Linux/Unix的工具时,需要Cygwin这样的模拟环境,Git也一样.Cygwin的安装和配置都比较复杂,就不建议你折腾了.不过,有高人已经把模拟环境和Git都打包好了 ...

  8. 在windows上缓存git 密码

    缓存git密码 一搜索 大部分都是在linux上的 . git config --global credential.helper cache 但在windows上pull或者push会报如下错误: ...

  9. 使用Gitblit 在Windows上部署Git Server

    Windows平台下Git服务器搭建 首先要下载Java JDK,安装完成后设置环境变量,先把java环境配好,接下来才是下面的gitblit.关于java环境配置请看上一篇文章 gitblit下载 ...

随机推荐

  1. Treemap 有序的hashmap。用于排序

    TreeMap:有固定顺序的hashmap.在需要排序的Map时候才用TreeMap. Map.在数组中我们是通过数组下标来对其内容索引的,键值对. HashMap HashMap 用哈希码快速定位一 ...

  2. Spring Kafka和Spring Boot整合实现消息发送与消费简单案例

    本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 先前我已经分享了Kafka的基本介绍与集群环境搭建方法.关于Kafka的 ...

  3. Fullpage参数说明

    参数说明 $(document).ready(function() { $('#fullpage').fullpage({ //Navigation menu: false,//绑定菜单,设定的相关属 ...

  4. xml与object 之间的ORM

    xml映射为object对象,同时object对象,以xml来表示: public class Tools { private static XmlNodeList SelectNodes(strin ...

  5. Validate Binary Search Tree(一定掌握的方法)

    Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...

  6. WebLogic域配置策略

    WebLogic域配置策略--手动和模板选项,第一部分 域含有BEA WebLogic Server实例的配置信息.它包含有关服务器.集群和机器的配置信息.域还含有关于资源,例如Java数据库连接(J ...

  7. 阿里REDIS优化

  8. Mysql分页查询性能分析

    [PS:原文手打,转载说明出处,博客园] 前言 看过一堆的百度,最终还是自己做了一次实验,本文基于Mysql5.7.17版本,Mysql引擎为InnoDB,编码为utf8,排序规则为utf8_gene ...

  9. Urlparse模块

    urlparse模块主要是把url拆分为6部分,并返回元组.并且可以把拆分后的部分再组成一个url.主要有函数有urljoin.urlsplit.urlunsplit.urlparse等. urlpa ...

  10. JS 小技巧整理

    一.javascript中调用函数并不一定严格执行指定的参数个数.(函数定义时的参数个数和调时指定的参数个数并不一定要相等) function showInfo(arg1) { var defindl ...