本地git与远程仓库添加关联:
1.安装git,在命令行里设置用户名和邮箱:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
2.关联仓库:
先创建ssh key: ssh-keygen -t rsa -C "email@example.com"
一直回车找到id_rsa.pub所在的目录,把公钥添加到远程仓库的ssh公钥里
本地项目推送到远程空仓库:
1.本地,远程分别建git仓库:
本地新建仓库(git init),提交项目到本地仓库,在gitee远程新建仓库(只建master),
2.本地仓库与远程关联:
git remote add origin git@gitee.com:xxx.git
第一次推送本地master分支的所有内容到远程:git push -u origin master(push之前线上的仓库要是空的)
3.创建分支并推送:
在本地创建分支:git switch -c dev
推送本地新建的分支到远程:git push --set-upstream origin dev
5.推送修改:
先提交到本地git,再推送到远程,如果远程分支比你的本地更新,需要先用试图合并
常用命令:
查看系统config git config --system --list
查看当前用户(global)配置 git config --global --list
查看当前仓库配置信息 git config --local --list
每次修改的文件列表, 显示状态 git log --name-status
每次修改的文件列表 git log --name-only
最近一次修改的文件列表 git log --name-only -1
将远程指定分支 拉取到 本地当前分支上:git pull origin <远程分支名>
克隆到本地库:git clone git@gitee.com:xx.git
添加所有文件到git暂存区:git add .
提交到本地git:git commit -m "test”
将与本地当前分支同名的远程分支 拉取到 本地当前分支上(需先关联远程分支):git pull
将本地当前分支 推送到 与本地当前分支同名的远程分支上(需先关联远程分支):git push
查看工作区状态:git status
创建+切换分支:git switch -c <name>
同步远程分支到本地:git fetch
切换分支:git switch <name>
合并某分支或者变动到当前分支:git merge <name>
查看本地分支:git branch
查看所有分支:git branch -a
本地所有的修改,没有提交的,都返回到原来的状态:git checkout .
git回退到上个版本:git reset --hard HEAD^
版本穿梭: git reset --hard commit_id
删除远程分支:git push --delete origin 旧分支名
换分支名字:git branch -m 旧名字 新名字
查看修改文件:git diff
删除本地分支:git branch -d <name>
强行删除:git branch -D <name>
其他:
暂时存储分支:git stash
回到存储分支: git stash pop
把提交的修改“复制”到当前分支: git cherry-pick <commit>
看分支合并图: git log --graph
删除文件:git rm
查看远程库信息:git remote -v
删除已有的远程库:git remote rm origin
1、将远程指定分支 拉取到 本地指定分支上:
git pull origin <远程分支名>:<本地分支名>
2、将远程指定分支 拉取到 本地当前分支上:
git pull origin <远程分支名>
1、将本地当前分支 推送到 远程指定分支上(注意:pull是远程在前本地在后,push相反):
git push origin <本地分支名>:<远程分支名>
2、将本地当前分支 推送到 与本地当前分支同名的远程分支上(注意:pull是远程在前本地在后,push相反):
git push origin <本地分支名>
Tagname(版本号)
命令git tag <tagname>用于新建一个标签,默认为HEAD,也可以指定一个commit id;
命令git tag -a <tagname> -m "blablabla..."可以指定标签信息;
命令git tag可以查看所有标签。
命令git push origin <tagname>可以推送一个本地标签;
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d <tagname>可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>可以删除一个远程标签。