Git常用操作

一、设置用户信息

# 设置用户名

git config --global user.name "用户名"

# 设置邮箱

git config --global user.email "邮箱"

# 查看全局属性

git config --global --list

# 取消全局属性

git config --global --unset user.name

 

 

二、生成SSH公私钥

# 通过ssh-keygen指令,git会在当前的用户目录下生成一对公私钥

# (id_rsa)是私钥

# (id_rsa.pub)是公钥

ssh-keygen -t rsa -C "邮箱"

 

 

三、登录github

1、进入github官网

2、点击头像

3、点击settings

4、点击SSH and GPG keys

5、找到SSH keys,点击New SSH key

6、在key输入框中,输入公钥(id_rsa.pub),点击Add SSH key

 

 

小插曲:验证和github的连接

ssh -T git@github.com

# 显示连接信息

ssh -v git@github.com

 

 

四、克隆远程仓库项目

# 克隆远程仓库中的项目,在远程仓库右上角的code上选择ssh然后复制下面的url

git clone {url}

# 克隆指定分支

git clone -b {分支名} {url}

# 查看当前分支

git branch

# 修改文件后,需要把文件从工作区提交到暂存区

git add 文件名 / git add .

# 从暂存区提交到本地仓库

git commit -m "写一句话描述修改了什么"

# 推到远程仓库

git push

# 推到指定分支

git push <地址名> <分支名>

# 从远程仓库拉

git pull

# 查看git本地仓库状态

git status

# 查看日志

git log

git log --pretty=oneline

 

 

pull request

1、去到目标项目 Fork(叉)这个项目到自己的库下面

2、去到自己的库中clone下来,注意clone的库不要弄错,确认是自己的库

3、本地修改完成后,push回自己的库

4、回到自己的github页面,在 Repositories 中找到对应的库,点击

5、点击 <>code 旁边的 Pull requests

6、点击New pull request

7、检查或填写一下pullrequest的库,分支等,一般默认会自动填写

8、没有问题就点击 create pull request

9、填写一下你做了什么

10、再次点击 create pull request

11、完成

 

修改/增加 git push/pull 的地址

# 查看远程仓库地址 (fetch)拉下来的地址,(push)提交的地址

git remote -v

# 添加远程仓库地址

git remote add <自定义名> <远程仓库SSL地址>

# 删除远程地址

git remote rm origin

# 更换远程地址

git remote add origin <URL>

# 把当前分支与远程分支关联

git push --set-upstream origin <我的分支名>

 

 

版本回滚

HEAD:指向当前分支最新的commit

Index:也被称为staging area 指一整套即将被下一次提交的文件集合,下文中称它为 暂存区

Working Copy:代表你正在工作的那个文件集 ,下文中称它为 工作区

# 查看日志,找到要重置的commitID

git log

# --hard 工作区和暂存区都会被清空,修改完全被重置

git reset --hard <commitID> 

# --soft 当前commit版本 和 回滚commit版本之间的变更,都会被存放在暂存区中

git reset --soft <commitID>

# --mixed 这也是reset的默认参数,当前commit版本 和 回滚commit版本之间的变更,都会被存放在工作区中

git reset --mixed <commitID>

### 回滚已经push到远程的变更,git revert实际上会产生一次新的commit,因此可以继续push到远程仓库

### 注意:使用git revert时要确保 工作区 和 暂存区 是干净的

### 撤销最近一次commit

git revert HEAD

# 撤销指定的版本的commit

git revert <commitID>

 

 

撤销变更

# 撤销 工作区 中的文件变更

git restore <文件名>

# 或者可以使用 checkout 切记:使用checkout不能忘记“--” 因为“git checkout”还可以用于分支管理的高级功能

git checkout --文件名

# 撤销 暂存区 中的文件变更

# 先把文件退回到 工作区

git reset HEAD <文件名>

# 然后 撤销文件变更

git restore <文件名>

 

 

分支管理

每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。

HEAD指向的就是当前分支

# 创建分支

git branch <分支名>

# 切换分支

git checkout <分支名>

# 查看分支

git branch

# 合并分支

git merge <分支名>

# 删除分支

git branch -d 分支名>
posted @ 2022-06-20 19:20  hhhhhtao  阅读(53)  评论(0编辑  收藏  举报