标签:git -- global Git 基础教程 config 分支
Git
版本控制
版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。
- 版本控制分类
- 本地版本控制:RCS
- 集中版本控制:SVN
- 分布式版本控制:Git
- Git与SVN的主要区别
- SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。
- Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!
环境配置
- Git配置
#查看配置
git config -l
#查看系统config
git config --system --list
#查看当前用户(global)配置
git config --global --list
- Git相关配置文件
Git\etc\gitconfig
:Git安装目录下的gitconfig --system系统级C:\Users\Administrator\.gitconfig
:只适用于当前登录用户的配置 --global全局
- 用户信息配置
配置个人的用户名称和电子邮件地址:
git config --global user.name
git config --global user.email
- 如果用了
--global
选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。 - 如果要在某个特定的项目中使用其他名字或者电邮,只要去掉
--global
选项重新配置即可,新的设定保存在当前项目的.git/config
文件里。
基本理论
- 三个区域
- 工作流程
项目搭建
- 常用指令
#在当前目录新建一个Git代码库
git init
#克隆一个项目
git clone [url]
- 文件状态
#查看指定文件状态
git status [filename]
#查看所有文件状态
git status
#添加所有文件到暂存区
git add
#提交暂存区中的内容到本地仓库
git commit -m "消息内容"
SSH公钥
#生成公钥
ssh-keygen -t rsa
#验证成功
ssh -T git@gitee.com
分支管理
几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
有人把 Git 的分支模型称为必杀技特性,而正是因为它,将 Git 从版本控制系统家族里区分出来。
- 基本命令
#列出分支
git branch
#创建分支
git branch (branchname)
#切换分支
git checkout(branchname)
#删除分支
git branch -d (branchname)
#合并分支
git merge
-
创建分支
当以此方式在上次提交更新之后创建了新分支,如果后来又有更新提交, 然后又切换到了
testing
分支,Git 将还原你的工作目录到你创建分支时候的样子 -
合并分支
合并并不仅仅是简单的文件添加、移除的操作,Git 也会合并修改。
-
合并冲突
我们将前一个分支合并到 master 分支,一个合并冲突就出现了,接下来我们需要手动去修改它。
在 Git 中,我们可以用 git add 要告诉 Git 文件冲突已经解决。
git status -s
git add test.php
git status -s
git commit
标签:git,--,global,Git,基础教程,config,分支 来源: https://www.cnblogs.com/code-hacker/p/16097296.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。