git新手使用教程
由B站视频教程整理而来。建议配合视频使用。
一、安装和初始化配置
安装教程地址
安装完成后,使用命令git -v
查看安装版本
1.配置用户名:
终端输入git config --global user.name "your name"
,将替换成你的用户名(一般就和gitee上的用户名一致就行)
2.配置邮箱:
终端输入git config --global user.email "your email"
,将替换成gitee绑定的邮箱
3.保存用户名和密码,这样就不用每次都输入了:
终端输入git config --global credential.helper store
4.查看配置信息:终端输入git config --global --list
2、新建仓库
git init
:将当前目录初始化为一个仓库
git init my-repo
在当前目录下初始化一个名为my-repo的仓库
3.工作区域和文件状态
工作区就是自己在电脑上编写代码文件的初始位置,通过git add命令将自己编写的代码文件添加到暂存区,再通过git commit命令将暂存区中的文件提交到本地仓库。
4.添加和提交文件
git init
:创建仓库
git status
:查看仓库的状态
git add
:添加到暂存区
git commit
:提交
代码示例如下:
总结:
git status
:查看仓库的状态
git add
:添加到暂存区。
也可以使用通配符,例如:git add *.txt
也可以使用目录,例如:git add .
git commit
: 提交
只提交暂存区中的内容,不会提交工作区中的内容
git log
查看仓库提交历史记录
git log --oneline
查看仓库的简洁提交记录
git_reset_45">5 git reset回退版本
为了使得Git Bash样式改为一行显示,进行了如下修改
默认情况下在windows中安装git之后bash界面是这样的,也就是命令输入框会换行显示,看起来非常别扭。
为了跟linux bash一样,实现同行显示,只需要修改一下配置文件即可,,打开Git Bash,在命令行中输入:
vim ~/.bash_profile
填入以下内容
export PS1="\[\e[37;40m\]\[\e[32;40m\]\u\[\e[37;40m\]@\W\[\e[33;40m\]\$(__git_ps1 ['%s'])\[\e[32;40m\]\$\[\e[0m\] "
保存之后重启(效果如下):
正文开始:
reset命令用于回退版本,可以退回到之前的某一个提交的状态。
git reset的三种模式,区别在于保留或丢弃工作区和暂存区的内容。
第一步创建三个文件,进行了三次提交:
验证软回退:
验证硬回退:
验证混合回退:
git_diff_74">6 使用git diff查看差异
git diff:比较工作区与暂存区
git diff HEAD:比较工作区与版本库
git diff --cached:比较暂存区与版本库
git diff <commit_hash> <commit_hash> /:比较不同版本(提交)之间的差异
git diff HEAD~ HEAD:比较最近两次提交的差异
git diff <branch_name> <branch_diff> /:比较分支之间的差异
验证效果
git__rm_85">7 使用git rm删除文件
gitignore_88">8 .gitignore忽略文件
这个文件的作用是可以让我们忽略掉一些不应该被加入到版本库中的文件。
9 注册GitHub账号
GitHub官网注册即可
10 SSH配置和克隆仓库
第一步,创建远程仓库:
第二步,创建SSH密钥:
第三步,将公钥复制到GitHub中:
第四步,克隆项目
Git是一种分布式的版本控制系统,我们的本地仓库和远程仓库是两个仓库,他们之间是相互独立的,我们可以在本地仓库中做任何修改,但是这些修改并不会影响到远程仓库,同样远程仓库的修改也不会影响到我们本地仓库,因此我们需要一种机制来同步本地仓库和远程仓库的修改内容,让他们的状态保持一致,那这个同步的过程就涉及到了Git中两个新的命令,pull和push,一个表示推送 一个表示拉取,push就是把本地仓库的修改推送给远程仓库,pull就是把远程仓库的修改拉取到本地仓库。
推送成功后,就可以在远程仓库中看到了
总结
ssh-keygen -t rsa -b 4096
:生成SSH Key
私钥文件:id_rsa
公钥文件:id_rsa.pub
git clone repo-address
:克隆仓库
git push <remote> <branch>
:推送更新内容
git pull <remote>
:拉取更新内容
11 关联本地仓库和远程仓库
如果我们本地已经有了一个仓库的话,怎样才能把它放到远程仓库里面呢?
首先在GitHub上创建一个新的仓库(first-repo)
操作如下
最后刷新一下远程仓库,可以看到推送成功了
同样的,同样地 如果我们在远程仓率修改了一些内容,那么就需要使用oull命令,来把远程仓库的修改拉取到本地。
首先在远程仓库中添加了一个文件README.md
接下来进行拉取
执行git pull的时候需要注意的一点就是,在执行完 git pull 之后,Git会自动为我们执行一次合并操作,如果远程仓库中的修改内容和本地仓库中的修改内容没有冲突的话,那么合并操作就会成功。否则合并操作就会由于冲突而失败,这个时候我们就需要手动来解决一下冲突。
从远程仓库获取内容还可以使用fetch命令,它们的区别在于fetch命令只是获取远程仓库的修改。但是并不会自动合并到本地仓库中,而是需要我们手动合并。
12 Gitee的使用
点击“账号设置”,找到SSH公钥位置,配置公钥。
创建一个仓库并拉取: