记录一下常用的git命令
![](https://img2022.cnblogs.com/blog/2192174/202211/2192174-20221106001641491-132980261.png)
-
本地修改了一些文件 (并没有使用 git add 到暂存区),想放弃修改
-
单个文件/文件夹:
git checkout -- filename
-
所有文件/文件夹:
git checkout .
-
本地修改/新增了一些文件,已经 git add 到暂存区,想放弃修改
-
单个文件/文件夹:
git reset HEAD filename
1 -
所有文件/文件夹:
git reset HEAD .
2.
git stash
git stash list #查看“存储”的列表
git stash pop #恢复 同时把 stash 存储列表的内容也删了
进阶使用
//暂存命名
git stash save "work in progress for foo feature"
//#查看“存储”的列表
git stash list
//可以将你指定版本号为stash@{1}的工作取出来
git stash apply stash
3.删除暂存区里的文件
git rm --cache 文件名
4.git
1)、本地分支重命名
git branch -m oldName newName
2)、 重命名(对应远程分支)的本地分支
-
重命名(对应远程分支)的本地分支
git branch -m oldName newName
-
删除远程分支
git push --delete origin oldName
-
上传新命名的本地分支
git push origin newName
-
把修改的本地分支与远程分支关联
git branch --set-upstream-to origin/newName
3)、查看当前代码仓库源
-
查看当前源
git remote -v
-
重设
git remote set-url origin xxxx_url
5、git配置
#查看全局配置
git config --list
git config --global -l
git config --global --unset XXX
git config --global --edit
#查看git用户名和邮箱地址命令:
git config user.name
git config user.email
#修改当前项目的用户名和邮箱地址:
git config user.name "username"
git config user.email "email"
#修改全局用户名和邮箱地址:
git config --global user.name "username"
git config --global user.email "email"
或者
git config --global --replace-all user.name "username"
git config --global --replace-all user.email "email"
6、
文件:
git rm --cached readme1.txt 删除readme1.txt的跟踪,并保留在本地。
git rm --f readme1.txt 删除readme1.txt的跟踪,并且删除本地文件。
文件夹:
如果是对所有文件都取消跟踪的话,就是
git rm -r --cached . //不删除本地文件
git rm -r --f . //删除本地文件
不使用的文件,可以使用.gitignore文件来进行清除:
每次使用git status 查看状态时总是会列出被跟踪的文件,可以通过 .gitignore文件来达到目的;
7、github仓库问题
#添加远程仓库
git remote add origin repoUrl
#查看分支详情
git branch -vv
#查看与远程仓库
git remote -v
#检查当前git配置的所有代理设置(http.proxy/https.proxy)
git config --global -l
#设置git代理http,https(端口与代理服务器一致)
git config --global http(s).proxy http://127.0.0.1:11080
#解除proxy设置
git config --global --unset http(s).proxy
#解除SSL验证
git config --global http.sslVerify "false"
#链接远程仓库
git remote add origin http://192.168.51.165:90/e-scm/emtouch.git
#两个不同的项目合并,允许不关联的历史文件[https://www.jianshu.com/p/f28a3c1aabd7]
git pull origin master --allow-unrelated-histories
8、npm install失败问题
#已解决Cannot download “https://github.com/sass/node-sass/releases/download/v4.12.0/win32-x64-83_binding
执行下面的命令:
npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ -D
9、常见命令及说明
1).从远程拉取分支到本地 git checkout -b 本地分支名 origin/远程分支名 2)、查看本地分支 git branch 3)、查看远程分支 git branch -r 4)、查看所有分支 git branch -a 5)、新建一个本地分支 git branch 本地分支名 6)、新建一个本地分支并切换到该分支 git checkout -b 本地分支名 7)、切换到另一个分支 git checkout 分支名 8)、将本地新建的分支与远程分支相关联(在当前分支下输入以下命令) git branch -u origin/分支名 其中origin/分支名 中分支名 为远程分支名 或使用下面命令 git branch --set-upstream-to origin/分支名 9)、查看本地分支与远程分支的映射关系 git branch -vv 10)、撤销本地分支与远程分支的关系[https://blog.csdn.net/litongqiang/article/details/107388918] git branch --unset-upstream 11)、拉取远程分支 git fetch origin(不指定分支名就是远程全部分支) git fetch origin XXX(拉下远程指定的分支) 12)、删除本地的分支 git branch -d XXX 13)、删除远程仓库的function分支.git push origin :XXX(用一个空的本地分支更新远程分支). git push origin :XXX 14)、合并分支 例如:想将dev分支合并到master分支,操作如下: git checkout master //切换到master分支上 git pull origin master //把远程分支pull下去,及时更新 git merge dev //把dev分支的代码合并到master上 git status // 查看状态 git push origin master //push到远程分支
其他命令
更新远程分支列表
git remote update origin --prune
查看所有分支
git branch -a
删除远程分支Chapater6
git push origin --delete Chapater6
删除本地分支 Chapater6
git branch -d Chapater6
版本相关命令
#查看执行过的git命令历史
history
#查看本地commit历史
git log
#查看本地历史变更记录
git reflog
#回退本地版本
git reset --hard commit_id
#远程仓库也退到相应的版本
git push origin <分支名> --force
仓库相关命令
#强制 撤销删除 错误提交到远程仓库的commit(先reset head,再push --force)
git reset --hard <commit_id>
git push origin develop --force
参考:
https://blog.csdn.net/ustccw/article/details/79068547
https://blog.csdn.net/weixin_44422604/article/details/111994539
https://lele3.github.io/2019/02/14/git%E4%BF%AE%E6%94%B9%E5%88%86%E6%94%AF%E5%90%8D%E7%A7%B0.html
https://cloud.tencent.com/developer/article/1766911
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步