git 基本命令


git:

查看所有分支
git branch -a

查看远程分支
git branch -r

查看本地分支
git branch

查看本地分支跟踪的远端分支
git branch -vv

git修改本地分支与远程分支的追踪关系
D:\GIT\jdjr_shield_ice_web_server.git\config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = https://jcode.jdfmgt.com/git/jdjr_shield_ice_web_server.git
fetch = +refs/heads/:refs/remotes/origin/
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "develop"]
remote = origin
merge = refs/heads/develop
[branch "feature-2.0.0-fmq"]
remote = origin
merge = refs/heads/feature-2.0.0-fmq

1、拉取代码,去除本地分支与远端分支冲突
git pull
2、从远端分支拉取代码到本地分支:
git checkout -b feature-2.0.0-fmq origin/develop
3、把本地分支推到远端

删除本地分支

  1. git checkout dev 删除分支前先切换到其他分支
  2. git branch -D tmp

删除远程分支tmp。
git push origin --delete tmp

创建本地分支
git checkout -b test-branch

将本地test-branch分支推送到远程
git push origin test-branch:test-branch
git push --set-upstream origin dev

比较两个分支差异:
1. 查看 dev 有,而 master 中没有的:
git log dev ^master
同理查看 master 中有,而 dev 中没有的内容:
git log master ^dev
2. 查看 dev 中比 master 中多提交了哪些内容:
git log master..dev
注意,列出来的是两个点后边(此处即dev)多提交的内容。同理,想知道 master 比 dev 多提交了什么:
git log dev..master
3. 不知道谁提交的多谁提交的少,单纯想知道有什么不一样:
git log dev...master
4. 在上述情况下,再显示出每个提交是在哪个分支上:
git log --left-right dev...master

git status 查看文件状态,列出当前目录没有被git管理,以及被修改过还未提交的.

git 将远程工作分支合并到本地dev分支:
1.首先保证所有的代码都提交到远程分支了
2.从本地拉取一个最新的dev分支
3.git merge --squash 远程分支名 ,执行完后,现在就把远程分支上的代码同步到本地dev分支上了
4.有冲突解决冲突,然后 commit 。
5.push到远程dev

Git