浅学易懂-Git图解
浅学易懂-Git图解代码的工作区域:工作区间: 即我们创建的工程文件, 在编辑器可直观显示;缓存区: 只能通过git GUI或git shell 窗口显示,提交代码、解决冲突的中转站;本地仓库: 只能在git shell 窗口显示,连接本地代码跟远程代码的枢纽,不能联网时本地代码可先提交至该处;远程仓库: 即保存我们代码的服务器,本文以公共版本控制系统:github为例,登录githu...
浅学易懂-Git图解
Git下载/安装/配置:
1、在git官网下载对应版本的压缩包文件
2、然后按照说明进行下一步、下一步安装(猴子都明白怎么安装,若还是不太清楚,网上有很多安装教程可以参考);
3、安装完成后,在cmd命令行中,敲入如下代码,查看是否安装成功
git --version
若出现了对应的git版本信息,则说明你已成功安装git
4、安装成功后,我们接下来要配置ssh公钥(为了每次不重复输入用户名和密码),首先你得先确认下你本地是否已经含有ssh(我的电脑-C盘-用户-ssh)
上图中的rsa代表私钥文件,rsa.pub文件是公钥文件,如果你能看到这2个文件,说明目前你是有ssh的,就无需再进行生成了,若你的电脑本地没有我说的以上两文件的同学,则需要继续跟我往下操作(去生成ssh),再cmd命令行中敲入以下代码:
ssh-keygen -t rsa -C 你的邮箱 //注意这里邮箱外边不需要夹引号
ok,此时你再回去本地看看是否存在刚才说的那两个文件(应该没问题)
5、远程仓库中配置你的公钥
具体如何配置请点击这里,有详解,一目了然
6、最后一步在本地配置你的全局名称和邮箱
git config -- global user.name "你的用户名"
git config -- global user.email "你的邮箱"
科普一下:(何谓ssh公钥:)
1.很多服务器都是需要认证的,ssh认证是其中的一种。在客户端生成公钥,把生成的公钥添加到服务器,你以后连接服务器就不用每次都输入用户名和密码了。
2.很多git服务器都是用ssh认证方式,你需要把你生成的公钥发送给代码仓库管理员,让他给你添加到服务器上,你就可以通过ssh自由地拉取和提交代码了。
3.简单理解:每次从远端拉去数据时,数据会保密,你本地要用私钥与之解析成功后才能使用,这就是为什么本地有私钥的原因
代码的工作区域说明:
- 工作区间: 即我们创建的工程文件, 在编辑器可直观显示;
- 缓存区: 只能通过git GUI或git shell 窗口显示,提交代码、解决冲突的中转站;
- 本地仓库: 只能在git shell 窗口显示,连接本地代码跟远程代码的枢纽,不能联网时本地代码可先提交至该处;
- 远程仓库: 即保存我们代码的服务器,本文以公共版本控制系统:github为例,登录github账号后可直观显示;
GIT分支
首先我们得知道, GIT分支包括本地分支 跟 远程分支; 惯例先上图:
- 查看本地分支情况:
git branch
绿色分支表示其为当前分支,所以得切换至master分支:
git checkout master
- 创建本地分支(自动会切换至新创建的分支):
git checkout -b newBranchName
但是此时创建的还是本地的分支,并没有与远程仓库相关联,于是要进行关联操作,直接把本地的分支推送到远程仓库即可:
git push origin newBranchName
推送完成后,可以查看本地和远端所有的分支情况:
git branch -a
但后面如果你想要删除这个远端分支,你可以这样操作:
git push origin --delete newBranchName
实际项目开发过程实操
1.本地初始化:
首先在本地工作区间创建一个新工程(文件夹):testGit
在testGit文件夹中初始化:
git init
2、实际开发中,如果你是后加入开发的,一般前人都已建好了远程仓库,而且有了初版,你只需拷贝一份至你的本地项目文件夹中即可:
git clone https://github.com/wteam-xq/testGit
3、有了初版之后你就可以在此基础上多人并行开发了,当你的代码编写完成或者部分完成想要提交代码至远端时,这时候就涉及到了代码的提交:
先查看有哪些文件未更新:
git status
将工作去代码添加到暂存区中:
git add .
将暂存区的代码提交到本地仓库:
git commit -m "首次提交说明"
然后最后将本地仓库代码提交到属于自己的一个远程分支上去:
git push origin myBranch(自定义的远程仓库分支名)
前端并行开发过程中,需要经常合并别人刚更新上传的代码,此时,你需要:
git pull origin dev(这个dev指的是你们项目组开发过程中规定的合并分支)
自写代码上传远端
还有一种情况是,自己家里练习,本地由代码,远端还未创建,想把本地的代码也像在公司那样传到远端来管控,很简单,往下看。。。。
例如在本地D盘中有一个work文件夹,里面就是你写的本地代码,那么打开你的编辑器(例:webstorm),点击file-open-D/work,然后打开webstorm的终端。。
首先初始化:
git init
然后将本地文档提交至暂存区
git add .
继续提交至本地仓库
git commit -m '初次提交'
然后在远端仓库新建库名(例:work),新建完成后就能得到一个库链接地址
然后本地与远端仓库链接:
git remote add origin 你的远端仓库地址
链接完成后,直接推送至远端仓库(此时默认推送的是master分支)
git push -u origin master
推送完成后,你可以刷新github页面看下,你刚才本地的代码是不是已经上去了,就是这么简单;
代码回退
当你在开发过程中,想要回归代码至之前提交的某个版本时,这里简单说一种情况就时回归提交至远端的情况,其余情况请自行百度,应为可能用的不多。。。。。
我们知道本地有一个commit列表, 记录了所有commit的记录, 查看commit列表指令:
// 查看commit id, 查看提交记录(git commit的记录)
git log
git log --pretty=oneline
// 查看以往提交历史(包括 撤销回退 记录)
git reflog
根据commit列表, 工作区间代码能实现更灵活的回退:
// 本地工作区间代码 回退到上一次版本、上上次、前10个版本
git reset --hard HEAD^
git reset --hard HEAD^^
git reset --hard HEAD~10
// 本地工作区间代码 回退到指定版本(“d362816”为commit id ,这里是前7位,当然你也可以写全部名称)
git reset --hard d362816
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)