Git

版本控制,git,Github

1. 推荐视频

【尚硅谷】Git与GitHub基础全套完整版教程

【教程】学会Git玩转Github【全】

【狂神说Java】Git最新教程通俗易懂

2. 版本控制系统的分类

2.1. 本地版本控制系统

单机运行,使维护文件版本的操作工具化

2.2. 集中化的版本控制系统

联网运行,支持多人协作开发,性能差,用户体验不好

svn:基于差异的版本控制,存储的是一组基本文件和每个文件随时间逐步累积的差异。

2.3. 分布式版本控制系统

联网运行,支持多人协作开发,性能优秀,用户体验好

git:在原有文件版本的基础上重新生成一份新文件,类似于备份。没有文件没有修改,git不再重新存储该文件,而是保留一个链接指向之前存储的文件。

3. 创建项目

在github上新建项目

4. 克隆项目

复制项目地址

选取存储本地文件的文件夹github

输入git clone url

1
2
$ cd github
$ git clone https://github.com/helloworld1006/PAT.git

这样github文件夹下就会自动新建一个PAT文件夹

5. 提交

1
$ cd PAT

把需上传的资料复制到文件夹下

1
$ git add .

提交文件

1
$ git commit -m "提交信息"

输入

1
$ git push -u origin master

然后进入里的github页面,刷新下页面就会显示你的项目

6. 使用token

2021年8月13日,git不再支持密码方式验证,而是建议使用token

1
2
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

6.1. 创建token

打开Github,在个人设置页面,找到【Setting】,然后打开找到【Devloper Settting】,选择个人访问令牌【Personal access tokens】,然后选中生成令牌【Generate new token】。选择要授予此令牌token的权限。然后,点击【Generate token】生成令牌。

记得保存好token!!!

6.2. 克隆下来的项目修改config

打开文件夹中的.git/config 文件,修改【remote “origin”】中的url为https://【token】@github.com/【username】/【repository】.git

6.3. 新建文件夹上传到GitHub

1
2
3
4
5
6
7
8
$ mkdir project
$ cd project
$ echo "# project" >> README.md
$ git add README.md
$ git commit -m "first commit"
$ git branch -M main
$ git remote add origin https://【token】@github.com/【username】/project.git
$ git push -u origin main

7. 取消暂存文件

1
$ git reset HEAD 文件名

8. 历史记录

1
2
3
4
5
6
$ git log
$ git log -2
$ git log -2 --pretty=format:"%h | %an | %ar | %s"

# 一行上展示所有提交历史
$ git log --pretty=oneline

%h 提交的简写哈希值

%an 作者名字

%ar 作者修订日期

%s 提交说明

8.1. 回退到指定版本

1
$ git reset --hard <CommitID>

8.2. 切换到最新版本

1
2
3
4
# 旧版本中查看命令操作的历史
$ git reflog --pretty=oneline
# 再次根据最新提交的ID跳转到最新版本
$ git reset --hard <CommitID>

9. 分支

9.1. 创建分支

1
$ git checkout -b 分支名

9.2. 选定当前分支

1
$ git checkout 分支名

9.3. 删除分支

1
$ git branch -d 分支名

9.4. 查看分支

1
$ git branch

9.5. 查看远程分支

1
$ git remote show origin

9.6. 拉取远程分支代码

1
$ git pull

10. 拒绝更新

因为当前分支的最新提交落后于其对应的远程分支,所以先从远程库fetch到更新再和本地库合并,之后就可以git push操作了

1
2
git fetch origin
git merge origin/master
本文结束  感谢您的阅读
  • 本文作者: Wang Ting
  • 本文链接: /zh-CN/2019/10/09/Git/
  • 发布时间: 2019-10-09 01:48
  • 更新时间: 2023-04-15 16:19
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!