连接远程仓库
- 在github等平台上创建仓库,获得仓库地址
- 使用命令
git remote add origin git@github.com:yourName/repositoryname.git // SSH地址
或git remote add origin https://github.com/yourName/repositoryname.git // https地址
// 如:git remote add origin git@gitee.com:jane/my_test.git
// 如果出现以下错误
fatal: remote origin already exists.
解决办法:在项目文件夹中找到.git文件夹,进入找到gitconfig文件,文本打开,删除掉[remote “origin”]这一部分内容即可解决
3. 连接完毕后,便可进行创建分支等git操作了
修改远程地址
// 查看当前的远程仓库地址
git remote -v
// 修改远程仓库地址
git remote set-url origin <url>
强制上传master分支
git push -f origin master // -f强制上传,本地库会覆盖掉远程库,不到万不得已别用。此处我只是仓库新建完后master本身就没有项目文件,所以使用此命令强制将第一次的项目文件上传到远程库
克隆远程仓库
git clone 远程仓库地址
查看所有分支(能看到当前分支)
git branch
创建分支
git branch 分支2 //创建分支2
删除分支
1. git checkout 分支1 //删除分支2需要先切换到其他分支,如分支1
2. git branch -D 分支2 //删除本地分支2
3. git push origin --delete 分支2 //删除远程分支2
修改分支名称
待修改分支尚未推送到远程分支
1、执行命令git checkout old_name // 切换到old_name分支,如果已经在这个分支下,可以不执行此步骤
2、执行命令git branch -m old_name new_name // 将本地仓库的old_name的名称修改为new_name
待修改分支已推送到远程分支
需要将分支old_name修改为new_name,执行如下步骤:
1、执行命令git checkout old_name // 切换到old_name分支,如果已经在这个分支下,可以不执行此步骤
2、执行命令git pull origin old_name // 将代码更新到和远程仓库一致
3、执行命令git branch -m old_name new_name // 将本地仓库的old_name的名称修改为new_name
4、执行命令git push origin --delete old_name // 将远程分支old_name删除
5、执行命令git push --set-upstream origin new_name // 将本地分支push到远程仓库
上传文件到分支
1. git add . //暂存提交的文件
2. git commit -m "描述信息(不同公司不同规范)"
eg: git commit -m "[提交类型] closes 对应任务编号 //右引号先不写可以换行
1. 描述信息1
2. 描述信息2"
3. git push origin 分支1 //提交到远程分支1
拉取远程分支develop到本地
1. git checkout develop //切换到develop分支
2. git pull origin develop //拉取远程分支develop
3. git checkout 分支1 //切换到分支1
4. git merge develop //合并分支1和develop
查看历史记录
git log // 查看git历史记录
// 退出git log方法
英文输入法下按Q键即可退出
解决git 远程删除分支之后,vscode本地分支列表没有更新问题
git fetch --prune
修改已提交到远程分支的message信息
例:
我们已经做了如下操作:
git commit -m "这是旧的message信息"
git push origin myBranch
此时我们已经将这次提交提交到了远程分支myBranch,如果我们想要修改这次的提交信息(最新一次提交),使用以下命令
1. git commit --amend //修改最后一次的提交信息。补充:此命令还可修改刚刚commit的message信息(此时还未提交到远程)
2. 进入vim编辑状态,修改相应的message信息
3. git rebase --continue //恢复所有提交记录
4. git push origin myBranch --force //将更改推送到远程分支
如果想要修改某一次提交的message信息,使用以下命令
假设已经有如下几次提交
commit 8
commit 7
commit 6
commit 5
commit 4
commit 3
commit 2
commit 1
commit 0
1. git rebase -i HEAD~3 //回退到倒数第三次提交(最后一次提交是开始位置,此时修改的是commit 6)
2. git commit --amend //更新提交信息
3. git rebase --continue
4. git push origin myBranch --force
版本回退
方法1:
git reset --hard HEAD^ // ^表示回退到上一个版本 ^^表示回退到上上个版本,以此类推
git reset --hard HEAD~50 // 回退到前50个版本
现在有这样一个场景,总共有四个版本的commit,我们刚刚回退到第三个版本,但是我们此时又想回到第四个版本,但是我们已经看不到第四个版本的信息了那该怎么做呢,指令如下:
git reflog // 获取所有版本号,此时就可以看到第四个版本的版本号
git reset --hard 版本号4 // 回退到版本4
撤销提交
当我们刚提交完message时,突然想要取消本次提交,执行以下命令
git reset --mixed HEAD~1 // 不删除工作空间改动代码,撤销commit,并撤销git add .操作
git reset --soft HEAD~1 // 不删除工作空间改动代码,撤销commit,但不撤销git add .操作
##参考
git命令大全