二十分钟拿Git干活

一、为什么使用git?
1、非常有利于自己知识和经验的积累
2、能够通过git展示工作经验和分享交流自己的项目
3、能够通过git管理团队和项目

二、为什么选git?
1、好用
2、无缝的提交到github等平台

三、git和github的关系?
git是一个版本控制工具
github是一个用git做版本控制的项目托管平台。

四、git 几个重要的概念
这里类比一下
仓库(书店):所有版本的代码都在仓库(所有版本的《×××》都在书店里)
分支(书架):不同功能功能的代码存放的地方(我把《×××》插图版和古装版放在不同的书架,这样可以互不干扰)
提交(书):每一个版本的代码 (《×××》插图版 第一版印刷,第二版印刷……)

五、核心重点基础内容怎么玩
官网:https://git-scm.com/ git是可以装在自己电脑或者服务器的:

1、新建一个文件夹helloGit,进入
2、右键gitBash,创建仓库,
git init
3、创建一个a.txt,打开里面内容随便造。
4、输入
git status
看一下git的状态,这个命令牛掰之处就是告诉你接下来该怎么做,人家说了你没把a.txt交给仓库去管。
5、将所有文件加入到缓存区(相当于你把文件交给管理员了),
git add .
6、将文件 提交到仓库(管理员把你的文件扔仓库里了),
git commit -m ‘这里是写点注释,省的你不知道自己提交了什么内容,这是第一次提交‘
这样一次提交就完成了,
7、打开a.txt 随便加点内容,继续造,然后
git add .
git commit -m ‘第二次提交‘
8、我们看看我们提交了几个版本,
git log
这里我们提交的两次就看到了,而且能看到commit后面的id 。我要想回到第一次提交怎么办?
git checkout c0f259e284a27c1871562631bd9753d46f5798bb
打开a.txt 看看,回到第一个版本了。到现在你已经会了,提交多个版本,回滚到某个版本。我想回到上一个版本老找id忒费事,可以用这个
git checkout -- .

六、说点进阶的玩法-分支
大家考虑这么一个情况,假如你是angularjs开发团队,你想angular2.0基于angularjs开发,但是有特别大的革命性变化,你说怎么办好?
这时候你看这样合不合理,我分一部分人负责原angularjs的基础维护和平滑升级,然后复制一份angularjs让另外一个团队进行革命性开发,这样两个团队都不互相干扰,等2.0的功能开发完成了,我再融合到原来的angularjs里面去。这个就是分支的功能。
我先复制一份原来的东西,开一个新的分支
git checkout -b new-fenzhi
我们看看现在有几个分支,
git branch
大家可以看到这里有两个分支,一个master,一个new-fenzhi,
新建b.txt的内容,然后
git add .
git commit -m ‘我在新分支上糟蹋的‘
注意,这时候我们删除b,我们回到master分支,看看它影响master不,
git checkout master
git log
大家可以看到 根本就没有影响master,master下是没有b.txt 我们假设搞完了,把git new-fenzhi的东西合并回master怎么做,
git merge new-fenzhi
这样就合并回去了。

七、说下git和github一起玩。
1、最简单把github项目搞下来
git clone xxxxx.git
2、提交到github,第一次这么做
git remote add origin https://github.com/breaddream/helloGit.git
git push -u origin master
这里注意,如果提示orgin 已经存在,就先把远程的仓库删除再执行,
git remote rm origin
第二次以后这么做,
git push

八、后续学习
上面这些适合个人开发者,如果你是一个部门主管,那么你就要会搭建内网git服务器,因为公司项目有保密性要求,是不可能让你随便往git上传的。
如果团队很小,你自己搭建就ok了进行权限管理,如果公司已经有一定规模比如100人团队,就需要有linux程序员进行严格的权限管理了,尤其对源代码有很高保密性要求的公司,甚至员工的修改和操作都会有记录。

原文地址:http://blog.51cto.com/13592288/2136467

时间: 2024-12-30 14:58:15

二十分钟拿Git干活的相关文章

(被检讨)为何没在二十分钟内做完要求的题目

时间:2015.3.6 地点:基础教学楼601 要求:在二十分钟内编写一段代码满足能随机抽取几组四则运算题目 因为没在规定时间完成特写此检讨,望广大园友共勉! 正确代码如下: #include<iostream>using namespace std;int main(){ int a,b,c,d,k; for(k=0;k<10;k++) {  a=rand()%99;  b=rand()%99;  c=rand()%5;  if(c==1) cout<<a<<&

三十分钟学习git的常用命令

最近在研究puppet的企业架构部署,补充下自己的git方面的知识. 位置: cd /home/nginx git init 建立单纯的git仓库: cd /var/nging.git git clone --bare /home/nginx /var/nginx.git 我们搭建git学习环境: cd /home/nginx git add * git commit -a -m "init" git remote origin /var/nginx.git git push orig

git干活流程

干活流程 1.checkout 干活分支 from develop 2.干活 3.checkout develop 4.pull remote develop 5.checkout 干活分枝 6.rebase from develop 7.checkout develop 8.merge from 干活分枝 9.push remote 1.master==>fetch==>merge 2.dev==>右击master选择merge master into DEV 下班最后一件事:comm

二十分钟弄懂C++11 的 rvalue reference (C++ 性能剖析 (5))

C++ 11加了许多新的功能.其中对C++性能和我们设计class的constructor或assignment可能产生重大影响的非rvalue reference莫属!我看了不少资料,能说清它的不多.下面我企图用简单的例子来说明,希望读者能够理解并应用这一重要的语言构造. 1.rvalue reference 是reference (即指针) 比如下面两条语句的语义完全一样: int &&p = 3;             // line 1 const int &cp = 3

Git 本地仓库(Repository)详解

大纲: 一.前言 二.概述 三.在Windows上安装Git 四.创建本地仓库 五.本地仓库管理详解 六.总结 注,测试机 CentOS 5.5 x86_64,Git 服务器版本:git version 1.8.2.1,客户端版本:git version 1.9.2.msysgit.0.所有软件请到这里下载:http://msysgit.github.io/. 一.前言 本来呢,其实呢.我以为Git也就几个命令,没什么难的.于是就到网上找了些文章看看,发现这些文章难得不知道该说什么好.不是简单的

输入年月日计算出是该年的第多少天

插件和工具介绍内容均收集于网络,太多了就不一一注明了,在此谢过! 1.Charles 为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析.一个可查看所有HTTP和SSL/HTTPS流量的工具.这款工具对于你测试和服务器端进行交互的应用非常有用 2.xScope xScope带有六种不同的工具,帮助每一个设计者快速.精确的完成工作,这些工具功能灵活.强大,包括∶量

0516.32款iOS开发插件和工具介绍[效率]

插件和工具介绍内容均收集于网络,太多了就不一一注明了,在此谢过! 1.Charles 为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析.一个可查看所有HTTP和SSL/HTTPS流量的工具.这款工具对于你测试和服务器端进行交互的应用非常有用 2.xScope xScope带有六种不同的工具,帮助每一个设计者快速.精确的完成工作,这些工具功能灵活.强大,包括∶量

孙振耀退休感言

这片文章我在网上不同的地方看到3次了,我也不知道真正出处是那儿,我就不写转载地址了.字数是有点多,值得花上二十分钟来阅读,收获会是很大的. 以下是HP大中华区总裁孙振耀退休感言. 如果这篇文章没有分享给你,那是我的错. 如果这篇文章分享给你了,你却没有读,继续走弯路的你不要怪我. 如果你看了这篇文章,只读了一半你就说没时间了,说明你已经是个"茫"人了. 如果你看完了,你觉得这篇文章只是讲讲大道理,说明你的人生阅历还不够,需要你把这篇文章珍藏,走出去碰几年壁,头破血流后再回来,再读,你就

java工程师之旅-一个月工作心得

不知不觉,在工作中已经度过一个月,距离上次写文章已经好几个月了,正好还有二十分钟下班,抽点时间来写一下博文,写一下心得. 首先说一下,在我工作之前,做了一个项目,和一个外校大四的学生做一个毕业设计,一个随堂APP,如果大家想要看看的话我在后面贴上git 在后来,这个项目给我的面试带来了很大的加分. 我的面试很运气,我第一次面试,面试的是一个小公司,做金融的,只有一个技术主管来面我,我第一次面试,很紧张啊... 问的大部分都是简历上写的一些技术点,还好当初没有吹牛逼把很多高大上的技术写上去,这一点