概要
本文适用于新手理解GITHUB社区与GIT的理解与入门使用。
GITHUB入门
GITHUB社区是一个代码开源交流社区。
对于普通的开发者而言:
- 可以在上面找到各种开源好用的工具用于借鉴学习或者下载使用。
- 可以提问,搜索相应的问题处理办法。比如bug。
对于高级开发者而言:
- 可以参与到开源内容中,针对开源项目提交自己的版本分支。
- 可以开发维护属于自己的开源项目。
GITHUB提供了门户网站与开发者工具两者来搭配使用。GITHUB门户网站主要用于可视化管理、下载、提问交流管理自己的账户资料等。
GITHUB站点
对于用户而言,只需要搜寻下载你要的项目和代码是不需要注册登录的。直接在右上角搜索你想要的内容,比如jd-gui。
搜索
搜索后的结果:
- repositories 所有和你搜索内容相关的仓库,通常一个仓库对应着一个开源项目。
- issues 所有用户,提问交流的地方。
- Language 标识是用什么语言写的
repository
具体选择某一个repository后,
- Code 页默认会展示master(最主要)分支的源代码
- Issues 是该项目中在GITHUB里所有问题和BUG
- Branch 是有多少个分支(下面GIT会说什么是分支)
- TAGS 通常用于标识不同版本,方便快速查找
- 中间源码部分可以直接点击查看详细内容
READ ME
该开源项目作者的所编写的使用教程或说明内容等。
releases
点击releases后,所有版本列表,Latest是最新版本。
releases中的Assets
min.jar:更精简的相应版本
.deb:Debian Linux操作系统安装包
.jar:JAVA包
.rpm:Red Hat Linux操作系统安装包
.tar:Unix和类Unix系统上的压缩
.zip:Windows系统上的压缩
Source code (zip):WINDOWS下的源码安装压缩包
Source code (tar.gz);LINUX下的源码安装压缩包
GIT工具
GIT工具是一个开源的分布式的代码版本控制系统,是开发者必备的重要工具。它可以帮你记录你个人的修改历史版本,可以在多人协作项目时进行代码合并。
版本管理:
- 在GIT管理中,中央库可以狭义的理解为一个项目。
- 分支通常由一个MASTER分支(最主要的分支),以及多个其它分支组成。每个分支都可以有属于自己分支的修改,最终以合并到MASTER分支为目的。
- 任何分支都可以被被授权的用户拉取。
- 拉取的内容是文件本身以及所有修改提交的记录。
工具安装
官网地址github项目地址。
Windows安装:
下载exe后直接跟着步骤安装即可。
MAC安装:
- 进入官网后选择:
- 下载DMG(Homebrew,MacPorts等等是其它命令行方式的安装)
- 执行时如果出现
- 在安全与隐私中选择仍要打开
- 跟着操作一直安装即可。
基础使用
在最初的开始,你可以理解为GIT工具就是用来帮你管理一个目录以及所有该目录的子目录。
本机初始化
- 新建一个文件夹,并且在命令行中进入这个文件夹
- 在目录下,执行git init命令
- 该命令生成了.git隐藏目录,所以需要ls -a来显示隐藏内容。
远程初始化
git init的命令是在本机上建立了仓库,在实际环境中通常会在服务器上建立这个初始化。然后所有人通过远程的方式检测服务器上的GIT(.git中存储了相应ip端口信息)。
克隆github上的项目git clone https://github.com/jquery/jquery.git
添加到暂存区
- 在该目录下新建a.txt文件
- 通过
git add 文件全名包含扩展名
的方式将文件添加到git的暂存区,并且新建一个b.txt比较它们在git中的状态。 - On brach master 标识我们现在在master分支上,这也是默认分支。
- No commits yet板块标识还没有被提交的内容(目前a.txt还在暂存区)。
- use "git rm --cached 文件"可以用于从缓存区撤离(此时会和b.txt一样的状态)
- b.txt状态中的Untracked files表示这个文件没有被git追踪。git不会管理它。
提交暂存区的修改
- 通过
git commit -m ''
命令提交到本地区
的历史版本上。
- 此时查看a.txt的状态,表示工作区没有需要提交的内容,是干净的。
查看日志
通过git log -p -2 文件
查看最近两次修改的内容详细。
推送到远程仓库
如果是git clone下来的项目,使用git remote
命令可以查看远程名称与地址,以上面的jquery为例子:
$ git remote -v
origin git@github.com:jquery/jquery.git (fetch)
origin git@github.com:jquery/jquery.git (push)
如果你拥有该分支的权限,你可以使用git push origin master
-git push 远程名 远程分支
来推送你工作区的内容到远程分支。
分支
通过git branch
查看本地分支,通过git branch -a
查看远程分支文章来源:https://www.toymoban.com/news/detail-828122.html
- 通过git checkout -b从远程分支origin/main上copy下来并新建一个本地分支test-branch
- 通过git branch来查看当前所在分支
- git checkout main切换本地分支
apple@apples-MacBook-Pro jquery % git checkout -b test-branch origin/main
Branch 'test-branch' set up to track remote branch 'main' from 'origin'.
Switched to a new branch 'test-branch'
apple@apples-MacBook-Pro jquery % git branch
main
* test-branch
apple@apples-MacBook-Pro jquery % git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.
apple@apples-MacBook-Pro jquery % git branch
* main
test-branch
apple@apples-MacBook-Pro jquery %
-
*
代表当前所在分支,可以通过git merge test-brach
合并到main(当前如果在main)。
远程更新
git pull origin master
命令可以从远程名 远程分支上拉取,并自动合并
到你的本地文件中。相当于执行了如下两句。文章来源地址https://www.toymoban.com/news/detail-828122.html
git fetch origin # 抓取远程仓库更新
git merge origin/master # 将远程主分支合并到本地当前分支
- git fetch拉取更新后不会自动合并到文件,方便你查看区别后合并。git fetch后通过git log查看。
把GITHUB当做你的远程仓库
- 在GITHUB官网上进行账户注册开通
- 本机GIT工具账户设置
apple@apples-MacBook-Pro jquery % git config --global user.name "EDU-Samuel"
apple@apples-MacBook-Pro jquery % git config --global user.email "@qq.com"
- 加密key的生成(输入后一直回车)
此时如果提示你输入密码不管直接回车
ssh-keygen -t rsa -C "刚才设置的邮箱"
- 生成后会告诉你路径
Your identification has been saved in
-
id_rsa
是私钥 -
id_rsa.pub
是公钥
-
在github上创建项目
- 在个人空间中找到Settings
- 选择new ssh key,将刚才的公钥复制进来。
- 点击左上角的按钮回到主页,选择创建第一个仓库,
- 输入项目名称,描述,选择公有私有等等
在本机上使用
- 复制地址通过
git clone git@github.com:XXX.git
复制到本地。 (请注意现在已经不是公共项目了,所以如果使用https协议链接需要身份验证,我们配置的ssh秘钥就没有意义了)
到了这里,关于完全从零Java自学系列【工具篇】(GITHUB开源社区&GIT管理工具入门使用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!