一、git的基本操作
1.本地项目绑定远程仓库
(1) 初始化仓库
git init
(2) 设置远程仓库地址
git remote add origin 远程仓库地址
(3) 将本地代码提交暂存区
git add .
(4) 将暂存区代码提交到本地仓库
git commit -m "提交说明"
(5) 拉取远程仓库代码
git pull origin master/main
(6) 推送到远程仓库
git push
2.克隆远程仓库
(1) 在github/gitee上新建一个仓库
(2) 克隆远程仓库
git clone 远程仓库地址
(3) 在克隆好的仓库中进行编辑,后续的提交命令都一样
3.常用命令
(1) 查看当前暂存区的状态:
git status
(2) 更新代码,获取远程仓库的代码
git pull
(3) 添加文件到暂存区
git add test.txt
(添加单个文件)
git add .
(添加全部有更改的文件)
(4) 提交文件
git commit -m "填写提交信息"
(5) 推送文件到远程服务器
git push
注意: 先更新远程仓库的代码,再提交自己的代码,避免冲突。
二、使用git操作svn仓库
常用命令
(1)通过git克隆svn远程仓库地址
git svn clone svn仓库地址
(2) 暂存本地的修改文件
git stash
(3) 从svn repo中同步最新代码
git svn pull rebase
(4) 恢复暂存的文件
git stash pop
(5) 添加文件到暂存区 (同git)
git add .
(6) 提交到本地仓库(同git)
git commit -m “提交信息”
(7) 推送到远程svn仓库
git svn dcommit
(8) 撤销到commit
git reset --soft HEAD^
(9) 撤销暂存区的代码
git reset --hard HEAD^
**注意:使用git操作snv仓库,拉取与推送代码时注意暂存区不能有文件,要先用
git stash
把不需要提交的文件藏起来.**
分支相关
(1) 查看所有的分支
git branch
(2) 创建分支并切换到新分支
git checkout -b 分支名
(3) 切换分支
git checkout 分支名
(4) 切换到主分支(以下两种都可)
git checkout master
git switch master
(5) 合并分支代码到主分支(同时合并分支上的提交记录)
git merge 分支名 --squash
(加上 --squash 可合并提交记录)
(6) 在主分支上提交到本地仓库
git commit -m "提交信息"
(7) 推送到svn远程仓库
git svn dcommit
(8) 删除本地分支
git branch -d 分支名
会在删除前检查merge状态,如果分支包含未合并的更改和未推送的提交,则不允许删除本地分支
git branch -D 分支名
强制删除分支
(9) 删除远程分支
git push 远程仓库别名 --delete 远程仓库分支名
(10) 更新本地的远程跟踪分支列表,确保已删除的分支不再显示
git fetch -p
最后:
以上命令是在工作中用到的,还有一些目前没有遇到,持续更新中……
使用git遇到的问题
1. git add . 无反应
问题描述:
初始化项目时,想要将项目提交到仓库中,执行
git add .
命令之后半天没有反应。
解决方法:
1).删除index.lock 文件,执行命令:
rm -f .git/index.lock
2).重新
git add .
2. 报错:OpenSSL SSL_read: Connection was reset, errno 10054
修改git设置,解除SSL验证
执行命令:
git config --global http.sslVerify "false"
3.执行完git pull --rebase之后如果有合并冲突,使用以下三种方式处理这些冲突
- git rebase --abort 会放弃合并,回到rebase操作之前的状态,之前的提交的不会丢弃;
- git rebase --skip 会将引起冲突的commits丢弃掉(慎用!!);
- git rebase --continue合并冲突,结合"git add 文件"命令一起用与修复冲突,提示开发者,一步一步地有没有解决冲突。(fix conflicts and then run “git rebase --continue”)
版权归原作者 Mae_cpski 所有, 如有侵权,请联系我们删除。