本文主要介绍 Git 常用操作
Git 常用操作
git clone 和 git remote
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| git remote add origin xxx.git
git remote add gitee_origin xxx2.git
git remote -v
git push -u origin master git push -u gitee_origin master
git pull origin master
|
git status
1 2
| # 查看忽略的文件或文件夹有哪些 git status --ignored
|
git add
1 2 3
| # [+--] 强制添加某个文件或文件夹, 忽略 .gitignore 中的设置 git add --force protected/ext/SpecificFolder
|
git rm
1 2 3 4
| # [+++] 删除某次 add, 比如不小心 add 某个文件 又想取消掉 git rm --cached xxx
|
git diff
1 2 3 4 5 6 7
| # [+++] 查看未已经更改但是未 add 的内容 git diff
# [+++] 查看已经 add 到缓存的内容 git diff --cached
|
git log
log 可以显示有哪些文件更改了, 更改了多少,
但是没没法看具体的更改内容
1 2 3 4 5 6 7 8
| # [+++] 查看提交信息 git log
# [+++] 提交信息并显示具体文件修改记录 git log --stat
# [++-] 以表格形式显示 git log --stat --graph
|
git show
show 可用来显示具体的文件更改信息, 具体到每一行
1 2 3 4 5 6
| # 默认显示 HEAD 的更改信息 git show
# 查看某次 commit 的更改内容 git show <commit>
|
git submodule
submodule 允许外部存储库嵌入源代码树的专用子目录中
1 2 3 4 5 6
| git submodule add <url>
git submodule init git submodule update
|
本地仓库
1 2 3 4 5 6 7 8 9 10
| # 可以克隆自本地的某个仓库, 比如 git clone C:/Users/shino/Desktop/gogoanime
# 也可以将远程仓库设置为本地某个地方 git remote add origin C:/Users/shino/Desktop/gogoanime # 查看当前远程仓库信息 git remote -v
# 然后就可以 pull , push git pull origin master --allow-unrelated-histories
|
git clone
1 2 3
| git clone --depth [depth] [remote-url]
|
git filter-branch
1 2
| git filter-branch --tree-filter 'rm -rf path/to/spurious/asset/folder' [commit]
|
常见问题
HOME 目录更改
在提交时 git 会在当前用户的 HOME 目录下查找 .ssh 文件夹,
根据里面的内容来获取公钥和密钥,因此若出现
1
| no matching host key type found. Their offer: ssh-rsa,ssh-dss
|
有可能是安装其他软件时, HOME 目录被篡改成其他目录,导致 git 无法获取
.ssh 文件夹了
合并另一个分支中的某个文件
很多时候在另一个分支更改了, 但是不想合并全部, 可指定合并某个文件
1
| git checkout --patch 来源分支名称 文件路径
|
拉取远程分支
1
| git checkout -b develop origin/develop
|
暂存代码
有时有突发工作,这时我们可先暂时存储当前代码, 转去做其他内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| git stash save "暂存的备注"
git stash list
git stash pop
git stash drop stash@{0}
git stash clear
git reset --hard
https://blog.csdn.net/jy692405180/article/details/78520251
|
对某个 commit 打标签
git tag -a v0.1.1 9fbc3d0
对于 Windows
下换行符自动转换
参考
修改之前提交的用户信息
参考
重新提交某个版本
有时候提交版本有问题,想做细微更改后重新提交;使用 commit --amend
就可以做到
回退到刚提交的版本, 修改后执行:
源文件来自于