我的一个git(码云)之旅
合作开发项目,你就会用到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中情况下的导入方案。
我们实践第一种,其他的我也不会撒。
git clone --bare https://github.com/bartaz/impress.js.git (例子)
他说我克隆了一个空仓库,我丢~
于是乎,我把他提示的代码,就是几行简单的入门命令,输了一次。。。
好吧,错的东西即使翻译之后也不知道怎么该,尝试最后两行代码。。。
我往mayunDemo里面放了一个文件,然后我的编译器后面出现了一个绿色的u
除非你上传了改变,这个u才会消失,但是暂时只能这样。。。不甘呀。。。
(9)那就提交呗。。。查资料,怎么提交呢?
提交代码:
1) git add .
2)git commit -m "分支名"
3)git 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,下面一行代码最后分支显示我们切换了分支。
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(码云)之旅的更多相关文章
- 今天遇到一个git码云同步的问题
一开始是因为eclipse编码不同意导致乱码,所以我和师弟就想统一都用UTF-8的,师弟统一好了,让我pull一下,pull的时候有冲突,因为我和师弟都修改了其中一个文件,然后我这边就删除了那个文件再 ...
- 将本地项目上传到git/码云
idea查看任意项目的远程仓库地址: git remote -v git branch -v git branch -d 分支名 删除本地分支 git branch -D 分支名 ...
- 【git2】git+码云+webStrom
在[git1]中介绍了Git的安装.webstrom配置Git和GitHub.GitHub项目上传下载的方法. 这篇将一下在[git1]步骤(一)基础上webstorm配置码云 实现项目的上传下载. ...
- git 码云 使用记录
使用了码云的私有仓库. 一.首先下载安装git 安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功! 二.创建版本库 什么是版本库 ...
- 使用git从本地上传至git码云远程仓库
从 http://git-scm.com/download 下载window版的客户端.下载好,一步一步安装即可. 使用前的基本设置 git config --global user.name & ...
- Eclipse + Git + 码云
1. 进入码云个人首页 点击自己的名称即可 2. 添加一个项目 3. 在Eclipse中创建一个本地Git Eclipse不建议git目录创建在项目的目录下,因此另选一个目录作为本地Git目录 选择一 ...
- 实现一个基于码云Storage
实现一个简单的基于码云(Gitee) 的 Storage Intro 上次在 asp.net core 从单机到集群 一文中提到存储还不支持分布式,并立了一个 flag 基于 github 或者 开源 ...
- 实现一个基于码云的Storage
实现一个简单的基于码云(Gitee) 的 Storage Intro 上次在 asp.net core 从单机到集群 一文中提到存储还不支持分布式,并立了一个 flag 基于 github 或者 开源 ...
- 上传本地项目到GIT码云
1.下载GIT 下载地址:https://git-scm.com/downloads 我这里下载的64位 2.安装GIT 双击下载的Git-2.18.0-64-bit.exe文件,选择自己的安装目录, ...
- git 码云的常用命令(版本控制)
首先在码云仓库创建对应的仓库 当你输入错误用户名和密码 需要清掉配置 git config --system --unset credential.helper 设置账号 git config --g ...
随机推荐
- 在win64上使用bypy进行百度网盘文件上传
阿里云服务器的带宽为2M,网站每日的备份包都3G多了,离线下载太费时间了,打算每日将备份包自动上传到自己的百度云盘里.1.先安装Python 执行python -V ,发现没安装python2.去py ...
- 1041 考试座位号 (15 分)C语言
每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考 ...
- 解决 Table ‘performance_schema.session_variables’ doesn’t exist 问题
performance_schema在mysql5.5以上就有自带 performance_schema(安装数据库时自带的)如果装数据库或者使用数据时不小心删除了,就会出现Table‘perform ...
- k8s-整体概述和架构
1.Kubernetes是什么 Kubernetes是一个轻便的和可扩展的开源平台,用于管理容器化应用和服务.通过Kubernetes能够进行应用的自动化部署和扩缩容.在Kubernetes中,会将组 ...
- 简单了解linux内核
linux内核是单块结构Linux能动态的按需装载或卸载模块Linux内核线程以一种十分受限制的方式来周期性地执行几个内核函数,因为linux内核线程不能执行用户程序,因此,她们并不代表基本的可执行上 ...
- HR系列GPS北斗时间同步服务器在电力系统典型应用
HR系列GPS北斗时间同步服务器在电力系统典型应用 时间同步系统主要由主时钟.若干从时钟.时间信号传输介质组成.根据时间同步现场的不同要求,时间同步系统的结构配置有多种形式,主要分为三种:基本式.主从 ...
- Java工作流引擎节点接收人设置20种规则讲解一
关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单 拖拽式表单 工作流系统CCBPM节点访问规则接收人规则 适配数据库: o ...
- 解决vue中element组件样式修改无效
vue中element组件样式修改无效 <style> .detail{ .el-input__inner { height: 48px; } } </style> 直接写st ...
- 世界500强ING集团顺利的敏捷转型之路
案例背景 为什么银行要像灰狗一样快? 荷兰国际集团(ING),成立于1991年,主营业务银行与保险业务,在全球45个国家和地区拥有分支机构,总资产887亿欧元(2018),全球53,000多名员工,拥 ...
- vnpy源码阅读学习(3):学习vnpy的界面的实现
学习vnpy的界面的实现 通过简单的学习了PyQt5的一些代码以后,我们基本上可以理解PyQt的一些用法,下面让我们来先研究下vnpy的UI部分的代码. 首先回到上一节看到的run.py(/vnpy/ ...