合作开发项目,你就会用到git,现在码云比较简单,因为是中文化界面,学习起来难度比较低,又支持5人以下项目免费,所以学习码云更好入手一点。

下面的东西适合一些个基础比较低的用户学习,因为我就是啊。。。我都配图啦,共勉。

(1)我现在要上手啦,新建了一个mayunDemo文件夹,切个图纪念纪念。

(2)我已经有注册码云了,注册是个前提工作,你去注册一个先。。。

  网址给你:https://gitee.com

(3)你已经注册了一个码云账号啦!

  点击右上角个人用户,你就进入了用户界面了,你需要一个SSH公钥,没有公钥就生成一个。

  使用SSH公钥可以让你在你的电脑和码云通讯的时候使用安全连接(Git的Remote要使用SSH地址)。

 (4)生成公钥,人家已经有提示啦,我只是给你截个图!

  。。。仔细一想,算啦,截图都懒得给你截。

(5)因为我需要的问题,所以先交删除。。。

我的马云。。。码云,仓库,查看你的库存。。。然后当然是点开它咯!

点击管理,进入管理界面

按照流程提示,一步一步删除。。。难度系数不高,请自行实践。

删除仓库的时候,会反复提醒,反复验证,挺人性化的。

在这里先删为敬!

(6)现在要开始创建仓库了!你应该知道下面的操作,因为上面提到仓库了,你点击新建仓库就行了。

自己玩就建个私人的。

码云仓库会自带文件,关于使用性能优化的(哈哈,是我瞎猜的),额,

强烈建议你仔细看完这几行代码,设置了用户和邮箱,会为后面身份识别省很多事。

(7)找个文件夹下面,空白处右键,打开你的git(很像cmd小黑窗口)

纳尼?你没有。。。天啊

好吧,补了一篇git安装,自己点开看看。

(8)说句实话,我的实力已经不够了,正在参考资料

我们想修改仓库里的文件,是不是应该先下载那一份呢。。。

https://www.oschina.net/question/82993_133520

这个网址,是官网带的连接博客,名叫 “ 如何导入外部Git仓库到中国源代码托管平台(Git@OSC)”,

名字威武霸气,提供了3中情况下的导入方案。

我们实践第一种,其他的我也不会撒。

  1. git clone --bare https://github.com/bartaz/impress.js.git (例子)

他说我克隆了一个空仓库,我丢~

于是乎,我把他提示的代码,就是几行简单的入门命令,输了一次。。。

好吧,错的东西即使翻译之后也不知道怎么该,尝试最后两行代码。。。

我往mayunDemo里面放了一个文件,然后我的编译器后面出现了一个绿色的u

除非你上传了改变,这个u才会消失,但是暂时只能这样。。。不甘呀。。。

(9)那就提交呗。。。查资料,怎么提交呢?

  1. 提交代码:
  2. 1) git add .
  3. 2)git commit -m "分支名"
  4. 3git push (如果有代码冲突,先git pull git push)

我们直接打开还没有操作的库,所在的分支就是master,因为你git clone克隆的分支就是默认分支。

下面介绍以下git add

git add -A和 git add . git add -u在功能上看似很相近,但还是存在一点差别

git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。

git add -u :他仅监控已经被add的文件(即tracked file),他会将被修改的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写)

git add -A :是上面两个功能的合集(git add --all的缩写)

(10)好了,更新库的绿帽子已经没有了!

这个黄点点是啥呢?

绿色,已经加入控制暂未提交
红色,未加入版本控制
蓝色,加入,已提交,有改动
白色,加入,已提交,无改动
灰色:版本控制已忽略文件。

这里显示我们已经提交上去了!而界面上呢,许多功能因为你的库的存在,可以使用了!

(11)早上好!又到了博客凑字数时间!

 好了,我们进入昨天的文件,进去之后呢,直接就进入了master分支

 我们查看分支git branch

(12)分支的意义

分支对于团队来说作用太大了。比如说一个项目现在是1.0版,那么开发团队可能要同时进行1.1版和2.0版的开发,这样代码就会出现较大分歧。这时候就需要用到分支了,不同的任务组在不同的分支上开发,互相之间不会影响。再比如说,需要向项目中添加一个新功能,一般的团队都不会直接在主分支上修改,都会新建一个分支,在上面更改代码。这样做的好处就是保证主线代码的完整性和可用性,也就是说,主线上都是稳定的代码,可以直接拿来发布的。

再说说分支在GIT上的特点:GIT的技术可以说是非常强大,说一切开发都依赖于分支一点都不过分。一般项目的master分支都是稳定的代码,可以直接发布或者被项目之外的人使用。新特性和BUG修改都在不同的分支上进行开发和测试。这样规范了整个软件的开发流程。分支之间的互不影响这种特性可以增加团队合作的效率。GIT分支的另外一个重要特性就是可以合并不同软件仓库(fork)的分支。大体就是:开发团队有一个主软件仓库,开发者可以fork这个仓库,相当于克隆了一个私有的软件仓库,然后开发者就可以在自己的软件仓库中建立分支并开发测试,测试完毕之后,可以向主软件仓库提交merge request,这样新开发的特性就会被合并到主软件仓库的某个分支中。这种特性极大地推动了开源项目,多年前参加开源项目都是神话,自从GIT出现后,每个人都可能成为开源项目的贡献者,就是基于这种特性(请参照Github的pull request,和merge request是同一个东西)。

(13)新建一个本地分支  :  git branch 分支名

新建一个本地分支newDemo,然后查看,嗯啊,就有啦

(14)切换分支  : git checkout  分支名

切换本地分支newDemo,下面一行代码最后分支显示我们切换了分支。

  1. Git checkout 分支名,执行后,你本地的数据,,目录结构,都会自动更新成该成员的分支的内容我又新建了一个分支,修改了其中一条,但是呢,如果添加了一个文件,没有add的话,git会不动

(16)合并分支。。。:git merge 分支名

合并之后,newDemo2还在。

(17)删掉他!。。。删除本地分支:   git branch -D 分支名

好了,nbewDemo2删除掉了。

(18)我们查看码云界面,你修改本地不会引起远程服务器的改变

推送一下远程就好了。

(19)代码有冲突,就需要下拉,这里不演示了,等项目遇到说。

提交代码:1) git add . 2)git commit -m "分支名" 3)git push (如果有代码冲突,先git pull 在git push)
(20)git 回退到某个历史版本: git reset --hard 1123123bbb9c00bbdca96(分支ID)

(21)、修改推到远程服务器:git push -f -u origin 分支名

  总结:反正就这么下来了,一边研究一边敲,输出式学习比输入式学习强太多,以后做作业用git简单提交下,慢慢熟悉,慢慢看bug。

我的一个git(码云)之旅的更多相关文章

  1. 今天遇到一个git码云同步的问题

    一开始是因为eclipse编码不同意导致乱码,所以我和师弟就想统一都用UTF-8的,师弟统一好了,让我pull一下,pull的时候有冲突,因为我和师弟都修改了其中一个文件,然后我这边就删除了那个文件再 ...

  2. 将本地项目上传到git/码云

    idea查看任意项目的远程仓库地址: git remote -v git branch -v git branch -d  分支名          删除本地分支 git branch -D  分支名 ...

  3. 【git2】git+码云+webStrom

    在[git1]中介绍了Git的安装.webstrom配置Git和GitHub.GitHub项目上传下载的方法. 这篇将一下在[git1]步骤(一)基础上webstorm配置码云 实现项目的上传下载. ...

  4. git 码云 使用记录

    使用了码云的私有仓库. 一.首先下载安装git 安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功! 二.创建版本库 什么是版本库 ...

  5. 使用git从本地上传至git码云远程仓库

    从 http://git-scm.com/download  下载window版的客户端.下载好,一步一步安装即可. 使用前的基本设置 git  config --global user.name & ...

  6. Eclipse + Git + 码云

    1. 进入码云个人首页 点击自己的名称即可 2. 添加一个项目 3. 在Eclipse中创建一个本地Git Eclipse不建议git目录创建在项目的目录下,因此另选一个目录作为本地Git目录 选择一 ...

  7. 实现一个基于码云Storage

    实现一个简单的基于码云(Gitee) 的 Storage Intro 上次在 asp.net core 从单机到集群 一文中提到存储还不支持分布式,并立了一个 flag 基于 github 或者 开源 ...

  8. 实现一个基于码云的Storage

    实现一个简单的基于码云(Gitee) 的 Storage Intro 上次在 asp.net core 从单机到集群 一文中提到存储还不支持分布式,并立了一个 flag 基于 github 或者 开源 ...

  9. 上传本地项目到GIT码云

    1.下载GIT 下载地址:https://git-scm.com/downloads 我这里下载的64位 2.安装GIT 双击下载的Git-2.18.0-64-bit.exe文件,选择自己的安装目录, ...

  10. git 码云的常用命令(版本控制)

    首先在码云仓库创建对应的仓库 当你输入错误用户名和密码 需要清掉配置 git config --system --unset credential.helper 设置账号 git config --g ...

随机推荐

  1. 洛谷$P1712\ [NOI2016]$区间 线段树

    正解:线段树 解题报告: 传送门$QwQ$ $umm$很久以前做的了来补个题解$QwQ$ 考虑给每个区间按权值($r-l$从大往小排序,依次加入,然后考虑如果有一个位置被覆盖次数等于$m$了就可以把权 ...

  2. DataX支持mysql8.X

    :first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdow ...

  3. vue项目准备工作

    1.写文档: 产品说明.工作日志.接口说明文档.数据库说明文档.项目架构说明文档等···· 例如:后台管理系统:商品的管理.店铺的管理.店铺类别管理.管理员的管理.用户管理等·····    前端渲染 ...

  4. Google 开源的 Python 命令行库:深入 fire(二)

    作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...

  5. ScheduledThreadPoolExecutor中定时周期任务的实现源码分析

    ScheduledThreadPoolExecutor是一个定时任务线程池,相比于ThreadPoolExecutor最大的不同在于其阻塞队列的实现 首先看一下其构造方法: public Schedu ...

  6. 傅立叶变换—DFT

    背景:最近看到实验室其他同学在用傅立叶变换解决问题,我也想通过并行来解决这个问题,所以看了一下傅立叶变换的东西,感觉涵盖的东西还能多,我只是初步做了一下了解(一定很片面,但是我主要是为了应用它,主要了 ...

  7. java序列化(二)

    上一篇我们简单的了解了java的序列化方法.可以想一下,如果有两个类,如果父类实现了序列化,子类没有实现序列化,子类在进行对象序列化读写时,父类和子类均被实现序列化.如果其中父类没有实现序列化,子类实 ...

  8. KMP 和 扩展KMP

    KMP:在主串S中找子串T的位置KMP算法的时间复杂度O(|S|+|T|). #define maxn 1000 char s[maxn],t[maxn];//s为主串,t为子串 int net[ma ...

  9. CTPN-自然文本场景检测代码阅读笔记

    TensorFlow代码 https://github.com/eragonruan/text-detection-ctpn 训练 main/train.py 1. utils/prepare/spl ...

  10. 【一起学源码-微服务】Hystrix 源码一:Hystrix基础原理与Demo搭建

    说明 原创不易,如若转载 请标明来源! 欢迎关注本人微信公众号:壹枝花算不算浪漫 更多内容也可查看本人博客:一枝花算不算浪漫 前言 前情回顾 上一个系列文章讲解了Feign的源码,主要是Feign动态 ...