赞
踩
目录
首先,去下载安装git,官网:https://git-scm.com/downloads
版本控制:开发中可能会有版本迭代,版本管理器
版本控制产品:git,svn等
版本控制分类:
本地版本控制:类似于上面的图,每次修改都会保存本地
集中版本控制:svn
所有的代码都放在一个公司服务器上,三位员工每天把代码写完提交到服务器,第二天就可以获取最新代码,如果两个人都修改了user对象,
那就会发生冲突,就会有解决冲突的方法,所以所有的版本数据都保存在服务器上,开发者从服务器上同步更新,上传自己的修改,而用户本地只有同步的版本,旧的版本都只存放在服务器上
(那万一服务器崩了,就会拿不到代码,所以出现分布式版本控制)
分布式版本控制:git
每个人拥有全部代码,版本数据会同步到本地每个用户,不用去统一的服务器上看,可以看到本地的版本历史,可离线在本地提交,在联网时push到服务器那里就行,不会因为网络问题或服务器损坏造成不能工作
git和svn区别:
git是分布式版本系统,数据主要放在本地,不需要联网,可以互相看到对方改了什么代码,svn是集中式版本控制,数据主要放在中央服务器,需要联网
git bash:采用linux命令,主流,方便
git cmd:采用·windows命令
git gui:图形化界面,不建议初学者
cd:切换
pwd:显示当前路径
ls:查看目录
touch:创建文件
rm:删除
mkdir:创建目录
mv:移动
等等
查看配置:git config -l
查看系统配置:加上约束条件
查看本地配置:每台电脑都需要,相当于向git即别人告诉你的身份
本质上这些配置文件都是在本地文件中,修改即可
如何设置用户名和邮箱:
找到原来设置好的用户名和邮箱(如果是新电脑没有配置过git就不需要这一步)
首先找到电脑用户文件夹:
记事本打开并删除原来用户名和密码:
删除完再去git bash命令窗口下验证:没有显示即可
安装完git后最重要的一步,不做会影响后面项目的提交:
重新创建用户名和密码:
git config --global user.name “cxm”
git config --global user.email “xxxxxxxxxxx@qq.com”
创建配置完毕。
git工作区域:工作目录,暂存区,资源库(本地git仓库),远程git仓库,所谓的git就是把文件在这几个区域间切换
本地工作目录使用git add 文件名(git add .表示把所有文件提上去),命令提交到暂存区,git commit命令提交到本地git仓库,git push提交到远程仓库
反向:从远程把代码拉到本地仓库git pull,commit提交后回滚回来用git reset,从暂存区放回本地git checkout
工作区:本地放代码的地方
暂存区:用于临时存放你的改动,本质上只是一个文件
本地仓库:本地存放数据,拥有所有版本的数据
远程仓库:github,gitee
git的工作流程:
首先在工作目录下修改,添加代码,文件
将文件放入暂存区
将暂存区的文件提交到git仓库
搭建git本地仓库:
第一种:本地初始化
初始化:git init
就会出现一个.git文件
第二种:克隆远程仓库到本地:
git clone 网址(url)
首先搭建仓库或远程克隆:git init
查看文件状态:git status
初始:
添加一个txt文件:
再次查看状态:
显示没有被跟踪,提交到暂存区中:git add .
接下来将文件提交到本地仓库:git commit
git commit -m “消息内容”其中-m表示提交的东西的信息,你提交的东西的消息
例如第一次提交
git commit -m “第一次提交”
版本查看:
git reflog:查看版本信息
git log :查看版本详细信息
如果发现提交的更新好的版本不行,想要回滚,回到以前的版本,先找到下图版本号:
本地仓库版本回滚:git reset --hard 回滚的版本号
配置远程仓库:git remote add 仓库别称 https仓库地址
查看远程仓库地址:git remote -v
推送至远程仓库:git push 仓库别称 推送分支名称
忽略文件:
有些时候我们不想把某些文件提交上去,就会在目录下建立.gitignore文件,可以看到不同的版本前面有版本号
gitee:
进入网站,注册信息
设置本地绑定SSH公钥,实现免密码登录,具体来说,gitee是远程仓库,我们平时是在本地仓库,设置这个可以每次提交不需要写密码
如何生成SSH公钥:
找到本地.ssh文件夹,只要安装git都会有
在git中输入ssh-keygen
有的可能会有加密算法:ssh-keygen -t
这里使用常见的rsa加密算法:ssh-keygen -t rsa
记事本打开生成的pub文件,在gitee上输入ssh公钥
将本地和gitee绑定了
使用gitee创建一个仓库:
首先新建仓库:
选择好语言等等,许可证主要用来表明是否开源或商用,转载等等,具体可以看上面每一种的描述
接下来把远程仓库内容克隆到本地仓库
本地仓库建好了,将仓库文件文件复制粘贴到IDEA文件目录下,这是最简单的一种方法
还有一种方法就是在刚才创建本地仓库的地方,使用IDEA创建文件,从而得到这样的结果
上面会有基本的git操作,红色代表选中未提交状态
第一次提交到暂存区,也可以git add .
点击commit提交到本地仓库,也可以git commit提交
提交到远程仓库:提交成功,可以选择傻瓜操作,也可以是命令行提交
gitee上提交显示:
在这里我新建了一个java文件
第二次提交:
也能查看到提交信息:
也可以修改.gitignore文件里的内容,这样下次提交就不会提交一些不需要的文件
以上适合单个人开发使用!!!!
一般的项目只有一个主分支,在这个项目中有11个分支,可能涉及到不同的版本,更新等
分支基本命令操作:
列出所有本地分支:git branch
列出所有远程仓库分支:git branch -r
新建一个dev分支:git branch dev
虽然此时新建了一个dev分支,但仍停留在master分支上
新建一个分支(-b 分支名表示新建一个切换分支)并且切换到该分支上:git checkout -b 分支名
切换分支:git checkout 分支名
分支合并:
如果多个分支并行执行,代码不会出现冲突,也就是同时存在多个版本
如何项目部有一个项目,管理员,api,app等不同功能由不同项目组来开发,如果两个人都对同一个文件做出修改,当这两个分支合并时就会出现冲突
解决办法:修改冲突文件后重新提交,交流选择保留他的还是别人的
合并指定分支到当前所在分支:git merge 指定分支名,一般开发中是不会在主分支中开发,在新建立的分支上进行开发,然后在合并到主分支上
删除分支:git branch -d 分支名
删除远程分支:git push 远程仓库别称 --delete 分支名
将本地新建的分支提交到远程仓库: git push --set-upstream 远程仓库别称 新建分支名
查看配置:git config -l
查看本地配置:git config --global --list
重新创建用户名和密码:
git config --global user.name “cxm”
git config --global user.email “XXXXXXXXXXXX@qq.com”
本地初始化:git init
查看文件状态:git status
版本查看:
查看版本信息或提交记录:git reflog
查看版本详细信息或提交记录:git log
本地仓库版本回滚:git reset --hard 回滚的版本号
配置远程仓库:git remote add 仓库别称 https仓库地址
查看远程仓库地址:git remote -v
克隆远程仓库到本地:git clone 网址
拉取代码:git pull 远程仓库名 分支名
提交到暂存区:git add .
提交到本地仓库:git commit -m “消息内容”
提交到远程仓库(路径正确。分支正确):git push
推送至远程仓库:git push 仓库别称 推送分支名称
列出所有本地分支:git branch
列出所有远程仓库分支:git branch -r
新建一个dev分支:git branch dev
新建一个分支(-b 分支名表示新建一个切换分支)并且切换到该分支上:git checkout -b 分支名
切换分支:git checkout 分支名
合并指定分支到当前所在分支:git merge 指定分支名
删除分支:git branch -d 分支名
删除远程分支:git push 远程仓库别称 --delete 分支名
将本地新建的分支提交到远程仓库: git push --set-upstream 远程仓库别称 新建分支名
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。