我的一个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 ...
随机推荐
- CodeForces 1182D
图论的思维题,太秀了,网上答案也不多,我就也来bb吧 总之47个样例姑且是过了,不知道还有没有反例: 会求树的重心和中心了,挺好 #include<cstdio> #include< ...
- linux 更新jdk
1.上传jdk版本的包 下载JDK地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...
- (Go) 1. go环境配置
第一步: 下载配置环境 转载: https://www.liwenzhou.com/posts/Go/go_menu/ 1.下载地址: https://golang.google.cn/dl/ 2.安 ...
- 【题解】BZOJ1034 [ZJOI2008]泡泡堂BNB(贪心)
[题解]BZOJ1034 [ZJOI2008]泡泡堂BNB(贪心) 考虑直接模拟田忌赛马... 我的最小比你的大,直接上 我的最大比你的大,直接上 otherwise,我小换你大 考虑最劣,由于每次比 ...
- $NOIp$提高组历年题目复习
写在前面 一个简略的\(NOIp\)题高组历年题目复习记录.大部分都有单独写题解,但懒得放\(link\)了\(QwQ\).对于想的时候兜了圈子的题打上\(*\). \(NOIp2018\ [4/6] ...
- Linux三剑客之sed的基本用法介绍
[介绍] sed是一款强大的非交互式的文本编辑器,可以对文件文本进行增删改查的相关操作,本文主要是讲解以下sed的基本用法. [常用选项] -e 下一个参数为一个sed指令,一般只会用于同一行有多个s ...
- 【一起学源码-微服务】Nexflix Eureka 源码十三:Eureka源码解读完结撒花篇~!
前言 想说的话 [一起学源码-微服务-Netflix Eureka]专栏到这里就已经全部结束了. 实话实说,从最开始Eureka Server和Eureka Client初始化的流程还是一脸闷逼,到现 ...
- JVM性能监测工具——VisualVM
Java本身自带了有好几个jvm监测工具,其中jconsole和jvisualvm这两个工具具有图形化界面,可以监测到cpu.类.线程.堆等一些参数,而且具有远程监控的能力. 启动:打开cmd命令窗口 ...
- 「SP25784」BUBBLESORT - Bubble Sort 解题报告
SP25784 BUBBLESORT - Bubble Sort 题目描述 One of the simplest sorting algorithms, the Bubble Sort, can b ...
- 「BZOJ1722」「Usaco2006 Mar」Milk Team Select产奶比赛 解题报告
Milk Team Select 产奶比赛 Description Farmer John's N (\(1 \le N \le 500\)) cows are trying to select th ...