这篇文章主要讲解了“git的基础使用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“git的基础使用方法是什么”吧!
1. 设置SSH Key
设置 SSH Key 使得设备可以有权限访问账户里面的代码仓库
$ ssh-keygen -t rsa -C "your_email@example.com"
"your_email@example.com"
设置为自己GitHub账户的注册邮箱id_rsa 文件是私有密钥,id_rsa.pub 是公开密钥。
$ cat ~/.ssh/id_rsa.pub
ssh-rsa 公开密钥的内容 your_email@example.com
然后把公钥拷贝下来,添加到账户里面,注意要把前面的
ssh-rsa
也拷贝下来头像》Settings》SSH Key》new SSH Key
接下来验证一下,出现successfully字样即为成功
$ ssh -T git@github.comEnter passphrase for key '/c/Users/MYPC/.ssh/id_rsa':Hi abc! You've successfully authenticated, but GitHub does not provide shell access.
2. git 基本操作
2.1 git clone 已有仓库
$ git clone git@github.com:hirocastest/Hello-World.git
这里会要求输入 GitHub 上设置的空开密钥的密码,认证成功后,仓库便会被 clone 到当前目录中。
2.2 git add 将文件加入暂存区
代码编写完成之后,将代码添加到系统的暂存区
$ git add 文件夹/文件
2.3 git commit 保存仓库的历史记录
git commit 命令可以将当前暂存区中的文件实际保存到仓库的历史记录中。通过这些记录,我们就可以在工作树中复原文件。
$ git commit -m "记录一行提交信息"
m 表示对这个提交的概述,如果想要记录详细信息,就把 - m 去掉
2.4 git push
之后只要执行 push
命令,GitHub 上的仓库就会被更新
$ git push
2.5 git init 初始化仓库
clone
方法建立仓库,不需要执行 init
操作。如果要把本地文件设置为仓库,那么就需要进行 init 操作
$ mkdir git-tutorial$ cd git-tutorial$ git init
2.6 git status 查看仓库状态
$ git status# On branch master## Initial commit#nothing to commit (create/copy files and use "git add" to track)
结果现实,我们正处于 masteer 分支下,并且没有可提交的内容
2.7 git log 查看提交日志
git log
命令可以查看以往仓库中提交的日志。包括什么人在什么时候进行了提交或合并
$ git logcommit 5dbbff6e009abb8a6cc44187c93b694f94fbf82a (HEAD -> main, origin/main, origin/HEAD)Author: ywm <ywm_up@qq.com>Date: Sun Feb 28 17:17:00 2021 +0800
只想现实提交信息的第一行,可以在 git log
命令后加上 -- pretty=short
$ git log --pretty=short
2.8 git diff 查看更改前后的差别
执行 git diff
查看当前工作书与暂存区的差别
$ git diff
3. 分支操作
可以创建多个分支,同时进行完全不同的作业。等分支作业完成之后再与 master 分支合并。通过灵活运用分支,可以让多人同时高效的进行并发开发。
3.1 git branch 显示分支一览表
master 分支左侧有 “*”(星号),表示这是我们当前所在的分支。
$ git branch* master
3.2 git checkout 创建、切换分支
创建并切换到分支 feature-A
$ git checkout -b feature-A
实际上,上面那条命令,等价于下面两条命令
$ git branch feature-A$ git checkout feature-A
切换回分支 mian
$ git checkout main
切换回上一个分支
$ git checkout -
操作一下:创建一个新的分支 feature,在新的分支上修改 README.md,并且 add、commit
通过实际操作可以证明:只要创建多个分支,就可以在不互相影响的情况下同时进行多个功能的开发
3.3 git merge 合并分支
合并时加上 --no–ff 参数,可以保存之前的分支历史
$ git merge --no-ff feature
随后编辑器会启动,用于录入合并提交的信息
3.4 git log --graph 以图标的形式查看分支
$ git log --graph
4. 更改提交的操作
4.1 git reset 回溯历史版本
$ git reset --hard 目标时间点的hash值
通过 git reflog
查看当前仓库的操作日志,可以找到回溯历史之前的哈希值。只要不进行 git 的 GC(垃圾回收),就可以通过日志随意调取近期的历史状态。即便开发者错误执行了 git 操作,基本也可以用 git reflog 命令恢复到原先的状态。
$ git reflog
上面打印的是最近的操作,下面打印的是最旧的操作
4.2 消除冲突
合并操作的时候,容易出现冲突,这时候需要打开编辑器,来解决冲突
在实际开发中,往往需要删除其中之一,所以务必要仔细分析冲突部分的内容后再进行修改
解决冲突之后,再进行 add 和 commit 操作
如果对上一条提交信息不满意,可以使用 amend 参数进行修改
$ git commit --amend
4.3 git rebase -i 压缩历史
在合并分支之前,如果发现已提交的内容中有些拼写错误,不妨提交一个修改,然后将这个修改包含到前一个提交之中,压缩成一个历史记录。
git rebase -i HEAD~2
可以选定档期按分支中包含 HEAD 在内的两个最新历史记录为对象,并在编辑器中打开
5 推送至远程仓库
5.1 git remote add 添加远程仓库
在创建新仓库的时候,建议不要勾选 README.md 文件,这样会使本地仓库和远程仓库失去整合性。虽然到时候可以强制覆盖,但防止这一情况发生,还是不要勾选,就创建一个空仓库就好。
git remote 在先写代码,后创建仓库的情况下能较好的使用
$ git remote add origin git@github.com:github-book/git-tutorial.git
对于一般先创仓库,后写代码的,需要先 pull 下来仓库,再对文件进行修改
5.2 git push 推送至远程仓库
推送至 master 分支
$ git push -u origin master
-u 参数可以在推送的同时,将 origin 仓库的 master 分支设置为本地仓库当前分支的 upstream(上游),添加这个参数,将来运行 git pull 命令从远程仓库获取内容的时候,本地仓库的这个分支就可以直接从 origin 的 masteer 分支获取内容,省去了另外添加参数的麻烦
除了 master 分支之外,还可以推送到其他分支
$ git checkout -b feature-D$ git push -u origin feature-D
6 从远程仓库中获取
6.1 git clone 获取远程仓库
$ git clone git仓库地址
将本地的 feature-D 分支更新到最新状态
$ git pull origin feature-D
多名开发者在同一个分支中进行作业时,为减少冲突情况的发生,建议更频繁的进行 push 和 pull 操作
感谢各位的阅读,以上就是“git的基础使用方法是什么”的内容了,经过本文的学习后,相信大家对git的基础使用方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!