一、Git的介绍
Git和SVN的区别 svn:版本库集中存放在中央服务器,服务器容易单点故障,容错性差 git:有本地版本库的概念,远程版本库的区别,完全分布式 svn命令:commit checkout update git命令:push clone pull 两个本地命令: add新增内容到本地仓库 commit提交本地仓库
1.Git操作步骤
1.从远程仓库中克隆 Git 资源作为本地仓库。(Clone) 2.从本地仓库中checkout代码然后进行代码修改(Checkout) 3.在提交前先将代码提交到暂存区。(add) 4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。(commit) 5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。(push)
2.Git的安装
//参照文档进行安装 1.安装服务端 2.安装本地客户端(正常下一步即可) 3.安装中文语言包(正常下一步后,需要设置TortoiseGit->Settings) 4.设置语言后重启,重启电脑(有的图标显示不正常也是因为没有重启!!!!重启!!!!) //远程服务端
二、本地git的基本操作
//两种方式创建本地仓库 1.右击菜单选择Git在这里创建版本库,不用勾选制作纯版本库 2.右键选择菜单的Git Bash Here,黑窗口中输入git init命令,创建本地仓库 //创建项目文件夹,创建文件,添加到暂存区 add 添加文件到暂存区-》commit 提交暂存区的文件或者修改后的文件 右击菜单选择TortoiseGit->添加,选择文件确定->提交后到本地仓库 //查看日志 右击菜单选择TortoiseGit->日志 //删除文件 删除文件后进行提交 右键菜单选择TortoiseGit->删除 右键删除并保留本地副本后commit提交,仓库没有,本地还有 //还原文件(没有提交到本地仓库的才可以还原) 右击菜单选择TortoiseGit->还原->选择文件确定 还原未提交代码 还原历史版本 显示日志 比较选中的两个版本差异 选中要还原的版本右键选择重置master到这个版本 soft 改的是暂存区的文件,应用场景是有文件还未提交可以选择这个还原 mixed 还原仓库文件 暂存区不变 hard 暂存区和仓库都被还原(实际开发选第三个) //忽略文件 右击菜单选择TortoiseGit->添加到忽略列表 可以在.gitignore忽略文件中添加 *.class将所有class文件忽略 百度https:安全的http通讯协议,请求的时候是通过httpClient的SSL方式进行访问 百度SSH:专门用于远程登录,需要密码或者秘钥
三、远程仓库的操作
1.github仓库的使用
1.注册账号创建仓库 2.连接仓库方式两种 ssh 协议需要公钥和私钥 ===================SSH证书设置=============== //2.如果是ssh协议的需要 步骤一:Git Bash Here->ssh-keygen -t rsa命令后一顿回车在Windows/用户/当前用户名/.ssh文件中有两个文件(后缀带.pub的是公钥),打开文件拷贝出公钥钥匙串 步骤二:Github的settings->SSH and GPG keys->New SSH key Title随意设置,Key中保存公钥钥匙串 ----------------------------------------------------------------- 命令行的上传实现 git命令 remote 远端 add 添加 origin是默认的远端名称 后面是github的仓库路径 git remote add origin git@github.com:wygittest/git_64_first.git git push -u origin master ------------------------------------------------------------------ 图形化工具 右键推送 创建远端仓库 1.配置ssh.exe客户端 ---在git安装路径下--usr--bin---ssh.exe 网络选项中-》在ssh部分设置git安装目录中的ssh.exe配置 2.配置ssh连接使用的密钥 在生成密钥对的路径下(后缀不带.pub的文件) -------------------------------------------------------------------- https ----------------------------------------------------------------------- 命令行推送代码 git remote add https_cmd https://github.com/wygittest/https_cmd_64.git git push -u https_cmd master -------------------------------------------------------------------- 图形化工具直接定义远端 推送 输入账号密码
2.从远端仓库克隆代码到本地
图形化工具 右键--git clone-->输入远端路径 命令行可以做 git clone ---远端的仓库路径
3.远端仓库的操作
pull 拉取远端代码到本地 push 推送自己代码到远端 编辑冲突的解决 ===================同步版本库================= //1.右键Git克隆,填写SSH的URL地址,设置本地仓库路径,确定即可 //2.先提交到本地仓库,再推送到远程仓库 //3.其他人通过pull拉取仓库中代码 ===================演示冲突的解决============= //1.两个人同时推送相同文件,后者推送失败 //2.然后pull拉取版本后,手动解决冲突(删掉冲突代码注释等),选择TortoiseGit->解决冲突 //3.解决冲突后,提交代码
4.搭建私有的git服务器
需要centos6.5系统的网络适配器为NAT模式,可以上网 1.运行yum命令 准备git的安装环境 yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc 2.上传git安装文件到虚拟机服务器 3.解压缩安装文件tar -zxvf git-2.5.0.tar.gz 4.进入解压缩目录 cd git-2.5.0 5.直接敲autoconf 如果安装过程出现不识别命令 运行 yum install autoconf 在autoconf 6.直接敲./configure 配置命令 7.执行yum install perl-ExtUtils-CBuiler perl-ExtUtils-MakeMaker 8.make 编译安装源码文件 如果出现问题 先yum安装 9.make install 安装软件 ------------------------------------------------------------------------------- 创建仓库的步骤 1.root管理员添加用户 git 操作目录为 home下的git目录 adduser -r -c 'git version control' -d /home/git -m git 2.给用户初始化登录密码 passwd git 给git用户设置密码 可以设置简单的 比如git 忽略提示继续输入回车即可 3.切换git用户创建仓库,必须操作,不能用root用户创建否则没有git权限 su git 4.先进入git用户操作的目录 /home/git cd ~ 进入到当前用户操作的路径下 5.创建个文件夹 作为git的仓库 mkdir private_git 6.进入到仓库目录 cd private_git 7.初始化仓库 git init --bare ------------------------------------------------------------------------- 连接linux远端仓库 ===================客户端======================= //1.目录中通过git init创建本地仓库 //2.bin目录直接忽略 //3.提交后推送到远端,远端直接设置为centos的ip地址 ssh://git@192.168.25.128/home/git/private_git,服务器不配置公钥(步骤繁琐忽略,改为直接输入密码) //4.不要忘记一定要设置目录的访问权限
关于分支
//在一个账号目录下,演示创建分支,切换分支,切回主线合并分支 //分支为了解决开发不确定的新功能,创建分支。功能开发测试成功后,合并分支到master //1.右键创建分支 //2.右键切换到新创建的分支,从master切到分支上,后续正常开发 =============================合并分支====================== //1.先切换到master选择要合并的分支,进行合并
四、IDEA的应用
1.分支的介绍 git中分支在目录下只会存在一份代码,具体仓库中的代码是哪个支线,由head指针切换决定 2.idea配置git环境 3.idea中的基本操作 将项目交给git版本库管理 vcs---->import into version control--->create git repository 注意:选择当前项目文件夹 add commit revert --show histroy--》get 获取对应版本的代码 delete 4.idea中 推送工程克隆工程到远端 vcs---git-- push --定义远端路径 push推送 vcs---git ---clone--手动选择路径创建文件夹 更方便 5.idea中的多人操作代码 vcs---git--- push 推送新代码 vcs---git -- pull 拉取远端仓库代码 冲突解决 先pull拉取再push 推送 6.idea中git的支线操作 1.可以创建分支 vcs---git----branches 自定义分支名称 2.可以切换分支操作 vcs--git----branche--选择分支名称---check out 3.合并的操作 vcs--git--merge changes--选择需要合并过来的支线