Git: 常用手册之-命令指南
简介
温故知新,整理一下git相关命令,方便再忘记的时候快速查找和定位,顺便分享给大家;
在Git 中的绝大多数操作都只需要访问本地文件和资源,一般不需要来自网络上其它计算机的信息。基于这一特点,Git在断网后依旧可以在本地对项目进行版本管理,只需联网后,把本地修改的记录同步到云端服务器即可
使用Git 管理的项目,拥有三个区域,分别是工作区、暂存区、Git 仓库。如果把这些区域比作现实中纸质文件的人工处理和收纳管理,三个区域分别负责的任务是:
工作区:负责处理工作的区域。
暂存区:已完成的工作的临时存放区域,等待被提交。
Git 仓库:最终的存放区域
Git三种状态:
已修改:表示修改了文件,但还没将修改的结果放到暂存区
已暂存:表示对已修改文件的当前版本做了标记,使之包含 在下次提交的列表中;
已提交:表示文件已经安全地保存 在本地的Git 仓库中。
注意: 工作区的文件被修改了,但还没有放到暂存区,就是已修改状态。 如果文件已修改并放入暂存区,就属于已暂存状态。 如果Git 仓库中保存着特定版本的文件,就属于已提交状态。
Git如何删除远程分支
切换到master分支
git checkout master
查看已有的本地及远程分支
git branch -a
删除远程分支
git push origin --delete dev
删除后,再次查看分支情况
git branch -a

删除本地分支
git branch -D dev

远程分支和本地分支删除完毕
Git切换到远程分支,并且获得最新的代码
git checkout -b 本地分支名x origin/远程分支名x
使用上面的命令可以创建分支名并且关联到远程的分支,但是远程分支存在gitpush多次,发现关联分支的本地代码不是最新的,只需pull最新的代码就行
处于当前的分支,执行以下命令
git pull
Git查看远程分支
git branch -a
若执行以上命令仍看不到远程分支
-
先用git fetch命令更新remote索引
-
再用git branch -a查看
Git命名返回代码到指定版本
- git reset HEAD是指将当前head的内容重置,不会留log信息。
- git reset HEAD filename 从暂存区中移除文件
- git reset --hard HEAD~3 会将最新的3次提交全部重置,就像没有提交过一样。
- git reset --hard ****[ commit 哈希值] (386790fba5bb8dd235f8) 回退到 386790fba5bb8dd235f8 版本
根据--soft --mixed --hard,会对working tree和index和HEAD进行重置:
git reset --mixed `` [ commit 哈希值] ``:
此为默认方式,不带任何参数的git reset,它回退到某个版本,只保留源码,回退commit和index信息
git reset --soft `` [ commit 哈希值] ``:
回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset --hard `` [ commit 哈希值] ``:
彻底回退到某个版本,本地的源码也会变为上一个版本的内容
Example:
我要彻底返回在上一次提交以前的版本 git reset --hrad HEAD~1
我要回到上一次提交的版本:git reset --hard
Git切换仓库地址
- git remote -v 查看当前仓库地址
- git remote set-url origin (url) 切换更改当前远程分支地址,直接替换
需要重新登录git用户名密码才能生效 查看当前分支及git仓库地址(可忽略此步骤,个人习惯而已)
-
git remote
-
git remote -v
-
移除当前仓库地址
git remoter rm origin
-
移除后可以用git remote -v 命令查看是否移除成功,移除成功后添加目标仓库地址
git remote add origin 目标仓库地址
-
添加后照样可使用git remote -v 命令查看当前仓库,确认为目标仓库后,就可拉去或者推送代码,但是由于是两个不同的仓库,拉取、推送代码时可能会遇见分支相关问题,根据提示使用相关指令:
Git密码设置
查看用户信息
-
git config credential.helper store . 输入该命令后再次输入账号密码会自动保存到.git配置中
-
查看用户名 :git config user.name
-
查看密码: git config user.password
-
查看邮箱:git config user.email
-
查看配置信息: $ git config --list 修改用户名
git config --global user.name "xxxx(新的用户名)"
修改密码git config --global user.password "xxxx(新的密码)"
修改邮箱
git config --global user.email "xxxx@xxx.com(新的邮箱)"
移除用户名和邮箱
git config --global --replace-all user.name"你的 git 的名称"
git config --global --replace-all uesr.email"你的 git 的邮箱"
修改本地密码(此操作是克隆项目时账号密码错误使用,可以在克隆报错时自动提示键入密码)
gitconfig--system--unsetcredential.helper
设置记住密码(默认15分钟):
git config --global credential.helper cache
如果想自己设置时间,可以这样做:
git config credential.helper 'cache --timeout=3600'
转载自:https://juejin.cn/post/7202812701441425465