git 常用命令

远端 和 本地操作命令做归并整理

---------------------缩写-----------------------

branch-br |  checkout-co commit-cipull-pl push-ps status-st

comment : -m(参数)

build:-b(参数)

------------------- 配置-------------------------

git config core.filemode false  忽略文件权限方面的修改

------------------- 本地命令---------------------

git init  把所在目录变成Git可以管理的仓库

git status 查看修改或者新增的文件

git add  <path> 把需要提交的文件的信息添加暂存区

git diff  fileName 可以查看索引库中文件和原版本的差异

git diff HEAD -- fileName 可以查看工作区和版本库里面最新版本的区别

git commit -m "log" 提交到本地库

git log      显示从近到远的提交日志

git reflog  查看历史命令(带版本号)

 

git branch 查看当前使用版本

git branch  -a 查看本地所有版本

git fetch -v 查看最新版本

git fetch origin feature/20171016_minsheng:feature/20171016_minsheng #从远程库获取代码。

git remote -v 查看远程库信息

 

git tag 20180123-02 #打标签
git push origin 20180123-02 #推送标签

git checkout master 切换到主干分支

git merge branchName 合并指定分支到当前分支(有的需要root权限)

git checkout -b branchName 在当前分支下,创建并切换到新分支

 

git branch -D branchName 在主(非当前)分支下,删除本地分支

git branch -D -r origin/BranchName 删除本地的远程分支

git push origin --delete branchName 远程删除git服务器上的分支

------------------- 远端交互命令---------------------

git clone url 拉主干或者分支

没有执行add的撤销

git checkout -- fileName 把文件在工作区内(还没保存到暂存区)的修改全部撤销。

已经执行add,未执行commit的撤销

git reset HEAD fileName 把文件在暂存区的(还没提交到版本库)的修改全部撤销,重新放回到工作区。

已经执行commit,未执行push的撤销

git reset --hard HEAD^ 回退到上一个版本,HEAD表示当前版本,HEAD^表示上一个版本,HEAD^^表示上上个版本,HEAD~100表示往上100个版本

git reset --hard 3628164 定位到指定版本,版本号没必要写全,具有唯一性就可以了,Git会自动去找。

 

删除

一种情况是确实要从版本库中删除该文件

git remove fileName

git commit -m "log"

另一种情况是删错了,因为版本库里还有,可以把误删的文件恢复到最新版本

git checkout -- fileName  git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

 

git pull  拉回服务器的更新并合并(master)

git pull origin branch-name

git push origin branch-name 从本地推送分支到远程

git checkout -b branch-name origin/branch-name   new本地分支,并与远端exist分支关联。

git branch --set-upstream branch-name origin/branch-name 将本地exist分支与远端exist分支关联。

 

1. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区。

2. 因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。

3. 当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。 用git log --graph命令可以看到分支合并图

 

 

多人协作的工作模式通常是这样:  

首先,可以试图用git push origin branch-name推送自己的修改;  

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;  

如果合并有冲突,则解决冲突,并在本地提交;  

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!  

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。  这就是多人协作的工作模式,一旦熟悉了,就非常简单。

 

参考:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

转载于:https://www.cnblogs.com/shijianchuzhenzhi/p/6323121.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值