[Tool] 源代码管理之Git
本节目录
- 什么是Git
- 什么是GitHub
- 安装Git
- GitHub之Repository
- GitHub之托管页面
- 常用Git 命令
什么是Git
由于现在的开发多人协同办公,因此出现源代码管理工具
Git是免费开源的分布式源代码管理工具
Git由Linux之父为了维护Linux代码开发的.
什么是GitHub
GitHub相当于Git的一个提供方,如SVN中的TaoSvn,TFS中的TFS Online.
通俗的讲:GitHub相当于程序员版的微博,晒的是代码.
安装Git
安装Git,本来只需要装1个工具即可
http://git-scm.com/downloads.
或
https://git-for-windows.github.io/
(有Git Bash,代表安装成功)
GitHub之Repository
通常一整个项目为一个Repository,可以对应于.net 中的解决方案.
GitHub之托管页面
经常我们在GitHub上看到有人通过xx.github.io/yy等方式看到网站.
这是GitHub的托管网站功能,也只能放静态文件.
操作方式:
建立库
通过建立库名为:xx.github.io(xx.github.com也可以)
然后master分支的内容将自动为xx.github.io网站的内容
建立分支
通过建立分支名:gh-pages
然后访问地址xx.github.io/reposName
与TFS比较
在Git中主要有4个操作:提取 拉取 推送 提交
实际上只是多了一对中间状态,本质上是本地也有一份Repository!
这里和TFS SVN做下对比
Git UI操作 | TFS | Git 命令行 |
提交 + 推送 | 签入 |
add + commit |
提取 + 拉取 | 获取 |
pull |
SSH keys?
1.安装Git工具 http://www.git-scm.com/
2.在Git Bash 中:
ssh-keygen -t rsa -C "用户名"
3.提示Password的时候输入密码(在bash中,密码看不见)
默认生成在系统当前用户文件夹下的.ssh文件夹下
新建分支
- vs中进入管理分支,新建分支
- 选择本地分支(不带origin)
- 输入分支名称,创建分支
- 在未发布的分支中选中右键发布分支
合并分支
合并分支相当于解决多个文件冲突
安装
安装Git,本来只需要装1个工具即可
http://git-scm.com/downloads.
或
https://git-for-windows.github.io/
(有Git Bash,代表安装成功)
不需要再写用户名 密码
_netrc文件
machine 121.199.45.163
login user
password ogs_pwd
常用Git 命令
git init 初始化本地Git库
git status [-s] Git库当前状态
git add [-all] 添加修改到暂存
git commit -m '' 提交暂存更改到Git库
git log 查看git历史
git reset --hard xxxxaa 恢复到指定版本
git remote add origin url 添加远程地址
git push [-u origin master] 推送到远程
git pull 从远程拉取
git clone url 克隆一个库
git branch xxa 创建1个xxa分支
git checkout xxa 切换到分支xxa
这里重点说明一下git diff
a/Program.cs 是上个版本文件
b/.. 是本次文件
上图表示本次删除了2行,并添加了2行文件
[Tool] 源代码管理之Git的更多相关文章
- 基于git的源代码管理模型——git flow
基于git的源代码管理模型--git flow A successful Git branching model
- 源代码管理工具-GIT
源代码管理工具-GIT ---- 一. 掌握 - git 概述 1. git 简介? 什么是git? git是一款开源的分布式版本控制工具在世界上所有的分布式版本控制工具中,git是最快.最简单.最流 ...
- iOS核心笔记—源代码管理工具-GIT
源代码管理工具-GIT 一. git 概述 1. git 简介? 什么是git? > git是一款开源的分布式版本控制工具 > 在世界上所有的分布式版本控制工具中,git是最快.最简单.最 ...
- 源代码管理之Git命令的使用
目录 02.源代码管理之Git命令的使用 2.Git命令行演练-个人开发 2.1 如何学习git指令 2.2 初始化创建本地仓库 2.3 个人开发基本演练 2.4 Git的基本常识 3.Git命令行演 ...
- 温故知新,微软官方推荐的Visual Studio源代码管理之Git Ignore清单,开启新项目必备宝书
什么是Git Ignore清单 https://git-scm.com/docs/gitignore 简单来说,在Git进行源代码管理中,我们可以通过建立.gitignore来实现一个忽略的黑名单管理 ...
- 源代码管理工具GIT
01.GIT简介 svn是集中式的源代码管理工具,必须联网才能操作 git是分布式的. 有两中:一个是本地代码仓库,一个是远程代码仓库 分布式源代码管理工具 02.GIT - 本地代码仓库使用流程 1 ...
- 83、源代码管理工具(Git)
一.简介 git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git起源 作者是Linux之父:Linus Benedict Torvalds 当 ...
- 源代码管理工具 ——Git的介绍与简要教程
一.Github与Git (一)简介 GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub. GitHub于2008年4月10日正式上线 ...
- git windows 安装 - Github同步 / Vscode源代码管理:Git 安装操作
github上创建立一个项目 登录github网站,在github首页,点击页面右下角"New Repository" 最后点击"Create Repository&qu ...
随机推荐
- 如何配置 URLScan 工具
本文分步说明如何配置 URLScan 工具以防止 Web 服务器受到攻击和利用. 安装 URLScan 要安装 URLScan,请访问下面的 Microsoft Developer Network ( ...
- 前端测试回顾及我们为什么选择Karma
前端测试,或者UI测试一直是业界一大难题.最近Q.js使用Karma作为测试任务管理工具,本文在回顾前端测试方案的同时,也分析下为什么Q.js选用Karma而不是其他测试框架. 像素级全站对比 曾今有 ...
- android 自定义日历控件
日历控件View: /** * 日历控件 功能:获得点选的日期区间 * */ public class CalendarView extends View implements View.OnTouc ...
- Living one day at a time (update for a long time)
1, http://acm.hdu.edu.cn/showproblem.php?pid=1228 2014-04-14 10:39:52 分析:字符串处理题... #include<iost ...
- Three Sources of a Solid Object-Oriented Design
pingback :http://java.sys-con.com/node/84633?page=0,1 Object-oriented design is like an alloy consis ...
- asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” http:// ...
- struts2:拦截器
拦截器(Interceptor)是Struts 2的核心组件,Struts 2框架的大部分功能都是通过拦截器来完成的,例如数据校验,国际化,文件上传和下载等.为了实现这些功能,Struts 2框架提供 ...
- PL/SQL Developer去掉启动时自动弹出的Logon弹出框方法
以前用PL/SQL Developer 7.0版本,最近升级到PL/SQL Developer 11.0版本,但每次启动PL/SQL Developer都会自动弹出Logon窗口,并且选中其中的登录历 ...
- EETOP中关于Gm仿真的一些帖子的总结
1. cadence画gm曲线 电路里,要把漏的电源dc值设置成变量,比如叫vds,计算器,info标签,点op,然后点管子,在op窗口点list,选gm,然后把这个公式弄到ADE的outputs那里 ...
- 微信、qq时间格式模板
产品近来蛋疼,时间格式从做完到现在改了四遍了 ,最新的要求如下: * 2分钟内 无显示 * 2分钟-24小时 HH:mm * 昨天 昨天 HH:mm * 前天 前天 HH:mm * 今年 MM:DD ...