Git常用命令

廖雪峰Git教程

教程2:https://git-scm.com/book/zh/v2

基础命令

$ git config --global user.name "Your Name"
$ git config --global user.email "youremail@example.com"

-- 状态
git status

-- 初始化 .git文件
git init

-- 加入文件至暂存区
git add readme.txt

-- 提交至本地仓库
git commit -m ""

-- 回复工作区文件与暂存区一致
git checkout readme.txt

-- 恢复暂存区文件与仓库一致
git reset readme.txt

-- 比较工作区与暂存区差异
git diff

-- 比较暂存区与仓库的差异
git diff --cached


-- 创建SSH Key的秘钥对:c/Users/ice/.ssh
ssh-keygen -t rsa -C "youremail@example.com"

 其他

-- 查看文件内容
cat readme.txt

远程仓库

-- 查看远程仓库地址
git remote -v

-- 关联远程库
git remote add origin git@github.com:jingyesi2502/hello-world.git
git remote add origin https://github.com/jingyesi2502/hello-world.git
-- 向仓库推文件
git push -u origin master

-- 从远程库clone
git clone git@github.com:jingyesi2502/hello-world.git


-- 更新远程仓库地址【方法1】
git remote set-url origin url

-- 更新远程仓库地址【方法2】
git remote rm origin
git remote add origin url
-- 更新远程仓库地址【方法3】
每个仓库在初始化时,都会有一个 .git 的隐藏目录,修改其中的 config 文件中的 url

分支 

-- 查看分支
git branch
-- 查看远程分支
git branch -a
-- 查看本地与远程分支关联情况
git branch -vv

-- 创建本地分支
git branch <bhname>

-- 分支推送到远程并追踪
git push --set-upstream origin <bhname>

-- 切换分支
git checkout <bhname>
git switch <bhname>

-- 合并分支
-- 回到主/合并至的分支
git switch <master>
-- 将指定分支合并至当前分支
git merge <bhname>

-- 删除分支
git branch -d <bhname>
git branch -D <bhname>

-- 删除远程分支
git push origin --delete <bhname>

-- 创建+切换分支
git checkout -b <name>
git switch -c <name>


-- 查看分支图
git log --graph --decorate --oneline --simplify-by-decoration --all

-- 远程分支无法查看,取回分支更新,再checkout <error: pathspec 'v1.3.1' did not match any file(s) known to git>
git fetch

-- 查看本地分支与远程分支的跟踪关系
git branch -vv

-- 清除本地remotes/origin/*分支
git remote prune origin

git stash 暂存(用于临时保存或恢复更改),可跨分支;注:在未add之前才能执行stash!!!!

-- 暂存(备注便于查找)
git stash
git stash [save “message”]

-- 查看所有暂存
git stash list

-- 恢复暂存(不删除),默认恢复第一个暂存,即stash@{0};如果要恢复其他暂存,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
git stash apply
git stash apply stash@{$num}

-- 恢复暂存(恢复时删除暂存),默认恢复第一个;如要恢复其他,git stash pop stash@{$num}
git stash pop
git stash pop stash@{$num}

-- 显示暂存的改动内容,默认以stat的形式,-p是以patch form的方式
git stash show
git stash show stash@{1}
git stash show -p
git stash show  stash@{1}  -p


-- 删除某个暂存
git stash drop stash@{$num}

-- 清空所有暂存
git stash clear

本地分支与远程分支分叉:
原因:没有先pull,后push;导致本地分支上分叉和远程不一致

尝试解决:add .  ->  commit  ->  push


Cannot pull into a repository with state: MERGING_RESOLVED

使用命令行模式:第一步,git commit -m ""  ;第二步:git push

通常,使用git status命令可以看到提示


.gitignore 配置生效并去除已提交的文件

// 删除本地缓存
git rm -r --cached .

// 添加要提交的文件
git add .

// 更新本地的缓存
git commit -m 'update .gitignore'

// 推入远程仓库
git push -u origin master

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值