git command


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

Step 1

从远程把项目拉取到本地

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

查看当前的分支

$ git branch

$git branch -r 查看远程分支

查看远程主机名

$git remote -v

在demo目录下创建了一个文件a.txt。现在要把这个文件添加到本地

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

提交添加的文件

$ 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

 

 

转载于:https://my.oschina.net/u/2552286/blog/632360

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值