git command


git@osc中建立一个项目:demo git

Step 1

从远程把项目拉取到本地 fetch

$ git clone https://xxx/xxx/xxx/demo.git spa

查看当前的分支 .net

$ git branch 继承

$git branch -r 查看远程分支 进程

查看远程主机名 开发

$git remote -v rem

demo目录下建立了一个文件a.txt。如今要把这个文件添加到本地 get

$ git add .          --undo:    $ git reset [文件名]   或  $ git reset  it

提交添加的文件

$ git commit  -m  'i commit file name a'    --undo   $ git reset HEAD^

查看git当前的状态

$ git status

提交到远程

格式:$git push <远程主机名><本地分支>:<远程分支>

$ git push origin master

提交时会要你输入用户名和密码

 方法1:编辑文件 .git/config,在文件的末尾添加下面内容,第二次就不用输入密码了

[credential]

helper = store

注意若是忽略<远程分支>,则远程分支名与本地名一至,若远程无该分支就建立

Step 2

修改a.txt 添加内容 ‘aaaaaaaaaaaaaaaaaaa

--undo:  $ git checkout -- a.txt    或  $ git checkout -- . 

修改后的a.txt提交了

--undo :  $ git reset HEAD^   这里回退到文件编辑的状态下(还没add

提交到远程了,可是我想将本地和远程的版本回退step1 

    $ git reset --hard HEAD^       本地回退

$ git push -f origin master      将本地的版本强推送至远程

本地建立通过了5次的提交,如今想退到第1次的提交

$ git reset --hard HEAD~4   本地回退

$ git push -f origin master   将本地的版本强推送至远程

Step3

手动删除一个文件dev.txt,要更新到库中        

--undo :    $ git checkout --  .    撤消全部修改的内容(删除,修改)

$ git add -A                      --undo :    $ git reset .     $ git checkout -- .

$ git commit -m 'delete dev.txt'      更新本地库

$ git push origin master           更新远程库,在更新远程时最好pull一下

第二种

$ git rm <文件名>                 用命令删除一个文件,‘*’表示全部

$git commit - m ‘delete dev.txt’      后面的与第一种操做同样了

Step4

在远程建立了一个分支dev

将远程的分支更新到本地

$ git pull origin dev:dev    将远程的分支拉取到本地

$ git checkout dev 切换至dev的版本

本地分支dev通过了5次的更新 ,如今要想将其合到master

$ git push origin dev:master   这时远程的分分合并完成了,但本地还未更新

$ git pull origin master:master  将远程的master分支更新至本地master分支   

第二种(当前分支为master

$ git merge dev              将本地的dev分支合并到远程的master

$ git push origin master       将本地的master更新至远程中

在本地建立一个faster分支并切换到该分支中,而后提交至远程

    格式:branch  <新的分支><继承的分支>   

$git checkout -b faster  -b:建立并切换,<继承的分支>为当前的分支

$git branch                查看分支,带‘*’表示当前分支

$git push origin faster       将faster分支推送到远程,若是远程无该分支就自动建立

在本地删除faster分支并更新到远程中

    $ git branch -D faster           强制删除,用于远程分支与本地分支版本不一至时   

$git branch -d faster            通常的分支删除操做

$ git push origin :faster         删除远程的分支   

在远程删除dev分支并更新到本地中

$ git push origin :dev 删除远程的分支dev

$git branch -d dev             不知道如何两步,只能手动删除本地分支

笔记

代码强推送(若是远程主机的版本比本地更新push将会报错,这时能够强推送),结果致使远程主机上的更新版本被覆盖

  $ git push --force origin master  或

    $ git push origin master -f

※ Pull 取回远程主机某个分支的更新,再与本地指定的分支合并

格式:$git pull <远程主机名> <远程分支>:<本地分支>    

$git pull origin master    --若是是与当前分支合并<本地分支可不用指定>

注意:若是Fetch 远程内容更新到本地,一般用来查看其余人的进程,由于它取回的代码对你本地的开发代码没有影响。默认取回全部分支的更新 $git fetch origin

格式 $git fetch <远程主机名> <远程分支>

$git fetch origin master

列出远程主机名 包括网址

$git remote -v

添加远程主机

$git remote add <主机名> <网址>

删除远程主机

$git remote rm  origin 

远程主机更名

$git remote rename <> <>

Push 

格式 $git push <远程主机名><本地分支>:<远程分支>

若是少了<本地>分支则删除<远程分支>如:

$git push origin :master 等于

$git push origin  --delete master

相关文章
相关标签/搜索