Git 常用命令
clone 指定分支到指定目录
git clone -b 远程分支地址 git地址 本地目录
git clone -b 远程分支地址 git@192.168.90.8:software/IFaceServer.git d:/idea_work/IFaceServer-master
pull 指定分支
git pull <远程库名> <远程分支名>:<本地分支名>
将本地分支与远程分支关联
git branch --set-upstream-to=origin/git
本地看不到远程新添加的分支
先用fetch命令更新remote索引。
git fetch
再查看remote分支.
git branch -a
从已有分支拉新分支开发
1. 切换到被copy的分支(master),并且从远端拉取最新版本
$ git checkout master
$ git pull
2. 从当前分支拉copy开发分支
$ git checkout -b dev
Switched to a new branch 'dev'
3. 把新建的分支push到远端
$ git push origin dev
4. 拉取远端分支
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.
git pull
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=origin/ dev
经过验证,当前的分支并没有和本地分支关联,根据提示进行下一步:
5. 关联
$ git branch --set-upstream-to=origin/dev
6. 再次拉取 验证
$ git pull
通过命令合并远程的两个分支
在使用Git的过程中,项目会有一个master分支,根据master分支还会创建一个dev分支,开发时都会使用dev分支。但开发完成之后如何把dev分支合并到master分支上呢?master分支dev分支都是远程分支。
按下面执行步骤就可以完成合并
1、把源码clone到本地库中(master分支)。
git clone [gitsite git远程网址]
2、在本地新建一个与远程的dev版本相同(被合并的版本)的dev分支
git checkout -b dev origin/dev
3、返回到master版本
git checkout master
4、把本地的dev合并到master
git merge dev
5、把本地的master同步到远程
git push origin master
删除分支
删除远程分支
git push origin --delete Chapater6(远程分支名称)
删除本地分支
git branch -d Chapater8(本地分支名称)
回退到某一个提交节点
获取提交节点
git log
回退到指定节点
git reset --mixed commit_id
idea操作 Version Control-->Log(选择回退的目标节点,右键)--> Reset current Branch to Here...
或者 VCS-->Git-->Reset HEAD
在仓库里面创建项目拉取与本地项目合并报错fatal: refusing to merge unrelated histories
原因是仓库中新建了一个项目,然后本地也建了一个空项目,想合并两个项目的时候就会报上面的错,意思就是两个不相关的分支不能合并,如果两个项目都是空项目的话,可以强制合并
git pull origin master --allow-unrelated-histories
本地项目上传到git
1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库
git init
2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件
git add .
3、用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明
git commit -m 'first commit'
4、关联到远程库
git remote add origin 你的远程库地址
如:
git remote add origin https://github.com/githubusername/demo.git
5、获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
git pull --rebase origin master
6、把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。
git push -u origin master
7、状态查询命令
git status