学习材料声明
尚硅谷Git入门到精通全套教程(涵盖GitHub\Gitee码云\GitLab)
GIt
Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。Git 易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。
1.Git的工作机制(下图缺少了代码托管中心的部分)
2.Git的常用命令
bash
//查看版本号:
git --version
//设置用户签名 Git 首次安装必须设置一下用户签名,否则无法提交代码。
git config --global user.name 用户名
//设置用户签名
git config --global user.email 邮箱
// 初始化本地库
git init
//查看本地库状态
git status
//添加到暂存区
git add 文件名
//提交到本地库
git commit -m "日志信息" 文件名
//查看历史记录 log是详细记录
git reflog
// 版本穿梭
git reset --hard 版本号
3.Git分支操作
分支。branch。
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)。本质就是head指针指向分支指针,分支指针指向版本。
bash
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支上//在本分支上合并别人的分支!!记住谁合并谁。
分支会尝试冲突,出现Merging,那就要手动修改冲突,然后再add和commit(执行提交(注意:此时使用 git commit 命令时不能带文件名))。
4.团队协作(对内对外,利用Github讲解)
4.1如何在github上创建远程库?
就是New resposity,然后创建就行。
bash
git remote -v 查看当前所有远程地址别名
git remote add 别名 远程地址 起别名 //远程地址,github会给你,用http和ssh都可以
git push 别名 分支 推送本地分支上的内容到远程仓库
git clone 远程地址 将远程仓库的内容克隆到本地
git pull 远程库地址别名 远程分支名 将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并
4.2团队外的人如何进行一些贡献?
首先要fork,这样会在自己的账号下有一个远程库,clone到本地,然后修改push上去。觉得写好了,就pull request给原团队。
原团队会接收到,然后进行核对和与你进行必要的交流,之后原团队进行merge pull request的操作。
4.3SSH免密登录
在当前的用户的家目录。C盘-user-用户名
bash
ssh-keygen -t rsa -C atguiguyueyue@aliyun.com //当初登录config设置的邮箱,连续三次回车。
cd .ssh //进入目录
cat id_rsa.pub //赋值内容
复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys
IDEA与GIt
1.IDEA操纵本地
- 需要创建git.ignore文件来使得不commit .idea或者target包下的影响跨平台或者与源码无关的文件。具体的配置流程看pdf。(写配置文件+在gitconfig里面配置)
- 在IDEA的setting-version-Git里面配置git.exx(这个好像IDEA会自己寻找,只要看一下版本对不对就好)
- 在菜单栏的VCS里面初始化 create Git Repository
- 正常的git add commit操作。
- 版本切换在IDEA下方的Version control 的Log里面,对应版本右击鼠标,checkout Revision。
- 新建分支,在右下角的master下, 切换版本checkout。
- merge操作,也在右下角完成。
2.IDEA集成GitHub或者码云(以GitHub为例,码云基本一致)
- 首先plugin对应的插件
- 在在IDEA的setting-version-GitHub添加账号(github建议使用token(具体如何获取看pdf,注意保存好token))
- VCS share project on github
- push (可以自己手动添加ssh方式)
- pull 每次开发前要先pull,保证在最新版本上进行开发
- clone
3.IDEA集成GitLab
GitLab 是由 GitLabInc.开发,使用 MIT 许可证的基于网络的 Git 仓库管理工具,且具有wiki 和 issue 跟踪功能。使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。
不能在windows上安装,如果不知道如何建立虚拟机和linux完全不懂,还是建议看韩顺平linux的前40p。
除了安装比较麻烦,其他的操作和集成GitHub一致。