Git 命令大全(二)

来源:互联网 发布:关于人工智能的新闻 编辑:程序博客网 时间:2024/05/18 03:27

远程仓库的操作

添加远程仓库

$git remote add [name] [url]

修改远程仓库

$git remote set-url –push[name][newUrl]

删除远程仓库

$git remote rm [name]

克隆远程仓库 (2种协议,一种是https协议, 一种是ssh协议)

$git clone https://github.com/youran1024/GitTest.git

$git clone git@github.com:youran1024/GitTest.git

创建本地仓库

$git init

关联远程仓库 (创建好本地的仓库后,通过此命令跟远程仓库做关联)

$git remote add origin git@server-name:path/.git

查看远程相关信息

$git remote -v

分支的操作

查看分支

$git branch

查看远程分支

$git branch -a

创建本地分支

$git branch

建立本地分支和远程分支的关联

$git branch –set-upstream origin/

创建远程分支到本地

$ git checkout -b origin/

创建分支 (把本地分支推送到远程,或者把本地的代码更新到远程对应的分支)

$git push origin

切换分支

$git checkout

创建并切换分支

$git checkout -b

删除分支

$git branch -d

强制删除分支(如果有没有提交的代码,需要强制删除,才能删掉分支,否则要首先撤掉修改过的代码)

$git branch -D

删除远程分支

$git push origin –delete

合并其它分支到当前分支

$git merge

同步本地远程分支

$git checkout –track origin/develop

添加某个分支的某个Commit

git cherry-pick #commitID#

通过cherry-pick 命令取出某个CommitID, 然后同步到某个分支上

合并分支,但是不合并分支上的Commit

$ git merge –squash #branch#

branch#上的Commits 会被当成一个 修改 提交到#当前分支#, 但并没有Commit,所以完成后需要Commit 一下

通过补丁的方式,执行合并。详解

首先把分支里的每个提交(commit)取消掉,然后把它们临时保存为补丁(patch)(这些补丁放到”.git/rebase”目录 中),最后把#当前分支#更新到最新的#branch#分支,最后把保存的这些补丁应用到#当前分支#分支上

$ git rebase #branch#

碰到冲突后,修改冲突

$ git rebase –continue

终止

$ git abort

解决冲突

手动解决
版本比较

和当前库里最新的作比较

$git diff HEAD – #fileName#

版本撤销

没git add .之前

$git checkout – #file#

撤销Commit 之前的操作

git reset HEAD #fileName#

保存当前工作的更改

gitstashgit stash list
版本回退

先用Git Log 查看CommitID,根据Id做版本回退

回到当前版本(HEAD)的上一版本 $git reset –hard HEAD^

上上版本

$git reset –hard HEAD^^

上N个版本

$git reset –hard HEAD^~N

根据Commit ID 做回退

$git reset –hard #Commit id#

(往后回退了,又想往前回退)需要以前的Commit 记录

$git reflog

保存工作状态

保存 $git stash

列表 git stash list

恢复 git stash apply

删除 git stash drop

恢复并删除 git stash pop

标签的操作

查看标签

$git tag

创建标签:

$git tag

创建标签并添加标签信息

$git tag -a -m “blablabla…

查看标签的信息

$git show

提交Tag到远程 (提交操作同分支)

$git push origin

提交本地所有的Tag (提交本地所有的分支那??)

$git push origin –tags

删除标签

$git tag -d

删除远程tag

$git push origin :refs/tags/

获取标签

¥git checkout -b #newbranch# #tag#

其它

酷炫的Git log 查看方式 个性化你的Log

[1] git log –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset’ –abbrev-commit –date=relative

[2] git log –color –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –abbrev-commit”

git 配置别名 (以后可以用 git lg 代替 git log –graph)

[git lg]显示图形化的Log

git config –global alias.lg “log –graph”

[git last]查看看最后一次提交信息

$ git config –global alias.last ‘log -1’