我的一个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 ...
随机推荐
- 20191031-7 beta week 1/2 Scrum立会报告+燃尽图 05
此作业的要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/9915 git地址:https://e.coding.net/Eusti ...
- knn识别简单验证码
参考 https://www.biaodianfu.com/knn-captcha-recognition.html 内容大致一样,只是根据自己的想法加入了一些改动 KNN(k近邻算法) 算法原理请看 ...
- .net core试水
概述 大概记录下我如何第一次使用.net core搭建一个api,由于最近.net core比较火,我也尝试着使用.net core做了一个小功能 本文主要包括 1.环境配置 2.程序编写 3.程序部 ...
- PHP 经典面试题集
这篇文章介绍的内容是关于PHP 经典面试题集 PHP 经典面试题集,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 结合我自己面试情况,面对的一些php面试题列举出来,基本上结合自己的看 ...
- KMP 和 扩展KMP
KMP:在主串S中找子串T的位置KMP算法的时间复杂度O(|S|+|T|). #define maxn 1000 char s[maxn],t[maxn];//s为主串,t为子串 int net[ma ...
- LCA (Tarjan&倍增)
LCA_Tarjan 参考博客:https://www.cnblogs.com/JVxie/p/4854719.html LCA的Tarjan写法需要结合并查集 从叶子节点往上并 int Find ( ...
- C# 微信h5支付
相关文档 https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=9_20&index=1 需要准备 公众号ID.商户号.商家私钥 1.登 ...
- UGUI源码之EventSystem
今天研究下UGUI的源码,先从EventSystem入手.EventSystem是用来处理点击.键盘输入以及触摸等事件的. 1.BaseInputModule EventSystem开头声明了两个变量 ...
- cannot insert multiple commands into a prepared statement问题原因及解决办法
问题是这样,我在对数据库进行写操作(添加.删除.修改)时,我想同时删除两个表中的两条关联数据,像这样 let sql = ` DELETE FROM bridge_parts WHERE id = $ ...
- phpstudy nginx设置CORS跨域不起作用的可能解决方法
今天搞了半天的跨域问题,想通过nginx配置跨域,希望以后本地调试程序都不用为这件事烦心.无非就是设置几个请求头: add_header Access-Control-Allow-Origin *; ...