Git常用命令

# 初始化
git init 
---------------------------------------------------

# 项目级别/仓库级别(仅在当前本地库范围内有效)
git config user.name xxx
git config user.email xxxxx

# 系统用户级别(登陆当前操作系统的用户范围)
git config --global user.name xxx
git config --global user.email xxxxx
---------------------------------------------------

# 查看当前项目状态
git status
---------------------------------------------------

# 将文件添加到暂存区
git add <file>
---------------------------------------------------

# 将文件从暂存区清除
git rm --cached <file>
---------------------------------------------------

# 提交到本地库,进入vim添加信息
git commit
# 提交到本地库,后面写上修改信息,不用进入vim
git commit -m "message..." <file> 
---------------------------------------------------

# 查看历史版本信息
# 完整信息(多屏操作:空格向下翻页,b向上翻页,q退出)
git log

# 一行显示
git log --pretty=oneline

# 一行显示,省略部分哈希值
git log --oneline(只显示过去的)

# 显示移动到某个版本需要的步数
git reflog(显示全部)
---------------------------------------------------

# 切换版本
# 1.基于索引值 (推荐)
git reset --hard [局部索引值]

# 2. ^ 符号,一个^后退一步,n个后退n步(只能后退)
git reset --hard HEAD^

# 3. ~符号 n表示后退几步(只能后退)
git reset --hard HEAD~n
---------------------------------------------------

# 永久删除的文件如何找回?
使用git reset --hard回到之前版本即可

# 暂存区删除的文件如何找回?
使用git reset --hard HEAD 同步本地库、暂存区、工作区 即可
---------------------------------------------------

# 比较操作
git diff <file name>(和暂存区进行比较)
git diff HEAD <file name>(和本地库比较)
git diff HEAD^ <file name>(和指定记录比较)
git diff(不指定文件名,比较全部文件)
---------------------------------------------------

# 分支操作
创建分支
git branch [分支名]

# 查看分支
git branch -v

# 选择分支
git checkout [分支名]

# 合并分支(先切换到要合并到的分支)
git merge [合并的分支名]
---------------------------------------------------

# 推送
git push [远程地址] master

# 克隆
git clone [远程地址]

# 拉取
pull = fetch + merge
git fetch[远程库地址别名] [远程分支名]
git merge[远程库地址别名/远程分支名]
git pull[远程库地址别名] [远程分支名]

# 创建远程库地址的别名
git remote add 别名 [地址]

# 查看全部别名
git remote -v
---------------------------------------------------
# 设置ssh免密登陆
ssh-keygen -t rsa -C [邮箱地址]
一路回车,进入.ssh目录查看文件id_rsa.pub内容,在github上进行操作

posted @ 2019-12-03 13:42  农夫三拳有点疼~  阅读(191)  评论(0编辑  收藏  举报