git常用命令,(长期更新)
git --version #查询git版本号
git config --global user.name '用户名' #定义用户名
git config --global user.email '邮箱‘'' #定义邮箱
git config --list #显示配置信息表
q 结束任务
---------------------------------------
git init #把文件夹变成git管理的仓库
git status #查看当前仓库的状态
git add 文件名 #把一个文件添加到暂存区
git add . #把所有文件添加到暂存区
git commit -m 提交说明 #把暂存区中的素有文件提交给本地仓库
git log #查看当前版本,以及之前的所有版本
git reflog #显示所有版本,以及所有恢复记录
git reset --hard 版本id #代码回滚到某一个版本
-------------------分支---------------------
1. 查看分支
//查看当前所在分支
git branch -vv
// 查看本地分支
git branch
// 查看所有分支(包括本地和远程分支)
git branch -a
2. 创建本地分支
// 2.1 远程不存在develop分支
git branch develop
// (创建并切换)
git checkout -b develop
// 2.1 远程存在develop分支
git branch develop origin/develop
3. 切换分支
// 切换到develop分支
git checkout develop
4. 推送本地分支到远程
// 4.1 远程不存在develop分支(第二个develop分支是远程分支的名字)
git push origin develop:develop
// 4.2 远程存在develop分支,但和本地develop分支没有关联(前提是:已经切换到develop下)
git push -u origin/develop
// 4.3 远程存在develop分支,并且和本地develop分支已关联(前提是:已经切换到develop下)
git push origin develop
5. 删除分支
// 5.1 删除本地分支
git branch -d develop
// 5.2 删除远程分支
// 删除远程develop分支(第二个命令表示:推送一个空的分支到远程develop分支)
git branch -r -d origin/develop
git push origin :develop
// 如果要删除master分支,需要在gitserver上将master设置为默认分支的选项取消(选择其他分支作为默认分支)
git branch -r -d origin/master
git push origin :master
// 删除远程分支
git push origin --delete 分支名称
6. 合并分支
// 将develop本地分支的内容合并到本地master分支(需要先切换到master分支)
git merge develop
-------------本地仓库推送给网络仓库----------------------
#把仓库的网络连接命名为origin
git remote add origin 仓库地址
#把本地仓库推送给网络仓库的master分支
# origin 上面的假名
git push -u origin master
# 推送一个远程不存在的分支
git push --set-upstream origin 分支名称
(通常在执行git push的时候如果远程不存在这个分支的话git会提示你执行这段命令,直接复制执行就可以了)
--------------把网络仓库的内容拉回本地-----------------------------------
#克隆网路仓库的项目
git clone 仓库地址
#拉取团队修改的部分
git pull 远程仓库地址
#拉去远程分支
git pull origin 分支名称
#如果已经添加origin的地址发生了变化,可以先执行以下命令删除已存在的origin
git remote rm origin
----------------------git设置默认分支--------------------------
# 如果需要在初始化仓库时设置默认分支为main ,
git init --initial-branch=main
# 重命名远程的master分支为main
git push origin :master
git push origin main
# 设置远程仓库的默认分支为main
git push --delete origin master
git push --set-upstream origin main
# git的默认分支为master, 如果你是想修改整个git的默认分支名称,则需要修改git的配置
git config --global init.defaultBranch main
-----------------git提交之后代码不见的寻找方式------------------------------
起因:commit完成之后代码,本地代码不见,原因暂时不明
解决思路使用git stash (该命令是隐藏工作区变更的代码)
git stash list 查看暂存区所有暂存内容
git stash show 可查看某一暂存纪录所修改的文件名称
git stash show -p stash@{0} 可查看暂存区域修改的细节
git stash pop stash@{0} 将暂存某条纪录弹出,恢复到代码中
git stash apply stash@{0} 应用暂存区
// 直接撤回 git stash pop 0
# 解决git会自动忽略文件名修改大小写的问题(比如一开始文件名是大写,提交后又改为小写,这样git就检测不到修改)
解决方法:
执行 git config core.ignorecase 查看本地仓库git忽略大小写是打开还是关闭。
false:表示关闭忽略大小,true:表示开启忽略大小写
执行 git config core.ignorecase false 可以解决这个问题
但是这种容易导致远程仓库大写小写都进行保留
但是这种方式容易导致远程存在两个文件,大写和小写都会存在,当有新人clone项目时拉下来的只有首次提交的文件,容易导致项目启动不了或者引入报错
你又白嫖,快点赞,(顺便推广一下我个人得小程序,嘿嘿,wx小程序搜索 :e小明 头像是灰太狼得就是了)