Git项目管理常用指令大全

Git项目管理常用指令大全(持续更新)

查看对应命令的帮助手册
    git help
初始化Git代码仓库
    git init / git init -bare
查看当前状态
    git status
add操作会Track该文件,暂存区会记录相关操作(无Track,暂存区不会记录相关操作)
.表示添加所有
    git add 文件名 / git add .
将暂存区的记录保存到本地代码仓库
注:commit操作的文字说明必须填写(查看进度,Bug负责人)
    git commit -m "文字说明"
当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用
1 git rm file_path
2 git commit -m 'delete somefile'
3 git push
当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用
git rm --cached file_path
git commit -m 'delete remote somefile'
git push
版本回滚,回滚到指定版本号对应的版本
    git reset --hard 345235344
 git reset --hard HEAD^ 快速回滚到上一个版本
查看所有的提交记录(包括“被撤销”在内)
    git reflog

配置相关待补充: https://www.jianshu.com/p/98bd9d45f132
Git常用命令速查表
https://upload-images.jianshu.io/upload_images/4631036-77e761fc020d461f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000
git 远程操作详解
https://microzz.com/2017/05/06/git/
结合idea,git提交项目常用命令
https://www.cnblogs.com/dingxu/p/8968889.html

打开git图形化界面
    gitk --all
刷新工作区
    git fetch --all
查看远端地址
    git remote -v
基于远端master分支创建dev分支
    git checkout -b dev -t origin/master
将多次提交合并成一个 (然后git add; git commit -m "XX";git push origin XX)
    git merge --squash<branch>
 
push所有分支
    git push
将本地主分支推到远程主分支
    git push origin master
将本地主分支推到远程(如无远程分支则创建,用于初始化远程仓库)本地master分支的最新修改推送至GitHub
    git push -u origin master
创建远程分支,origin是远程仓库名
    git push origin <local_branch>


显示远程仓库
    git remote
显示远程仓库详情
    git remote -v
显示origin远程库的详情
    git remote show origin
 
 
rebase操作把本地未push的分叉提交历史整理成直线;在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。 
    git rebase
 
git pull --rebase  
用在合并代码的时候其作用就是在一个随机创建的分支上处理冲突,避免了直接污染原来的分区
git pull --rebase的理解 https://www.cnblogs.com/kungfupan/p/9967531.html
git rebase --continue 确认处理好冲突后则将调整好的文件添加到暂存区(解决冲突,add命令,再执行此命令),告诉git,我已经解决好冲突了,
并且已经将处理后的文件添加到了暂存区,现在可以(也可以不)将这些文件commit

$ git pull --rebase
git pull的默认行为是git fetch + git merge
git pull --rebase则是git fetch + git rebase.
$ git fetch
从远程获取最新版本到本地,不会自动合并分支

git rebase --abort 可解决rebase期间的代码回退误操作等问题


清空git暂存区(清空之前git add 的内容)
    git reset HEAD
从工作目录中删除所有没有tracked过的文件
    git clean (reset只影响被track过的文件,clean来删除没有track过的文件)
 
 
创建dev分支,然后切换到dev分支: 
git checkout -b dev
git branch命令查看当前分支:

Stashed & BranchesStash
将所有暂存区的文件移动到“储藏区”,类似于另一种类型的工作区
    git stash
查看储藏队列(Stash lists)
    git stash list
将最近一次储藏恢复到暂存区
    git Stash apply
清空储藏队列
    git stash clear
将最近一次储藏恢复到暂存区并从储藏队列删除此储藏 
    git stash pop
 

Git与远程仓库关联以及关联错误解决方法 https://blog.csdn.net/qq_40829288/article/details/84477580
创建和合并分支  https://www.liaoxuefeng.com/wiki/896043488029600/900003767775424

git pull --rebase

git上传文件出错[rejected] master -> master (fetch first) error: failed to push some refs to
好像是本地目录和远程目录不一致,github中的README.md文件不在本地代码目录中,可以通过如下命令进行代码合并:
git pull --rebase origin master
这样再次提交,git push -u origin master 就可以上传成功了

git 比较两个分支的区别
git diff  分支1 分支2 --stat (加上 --stat 是显示文件列表, 否则是文件内容diff)


我如何’覆盖’,而不是’合并’,Git中另一个分支上的一个分支?
您可以使用“我们的”合并策略:

$ git checkout staging
$ git merge -s ours email # Merge branches, but use our branch head

gitk 是 git 提供的一个gui工具,可以很清晰地查看搜索提交历史及 git 相关操作。在终端 git 仓库目录下输入 gitk 命令即可使用。

git如何将本地分支多个修改中的一个push到远程分支

**********
将本地主分支推到远程主分支
    git push origin master
将本地主分支推到远程(如无远程分支则创建,用于初始化远程仓库)本地master分支的最新修改推送至GitHub
    git push -u origin master

如何解决git上传文件出错[rejected] master -> master (fetch first) error: failed to push some refs to
出现这个问题是因为github中的README.md文件不在本地代码目录中,可以通过如下命令进行代码合并
git pull --rebase origin master
1
然后再
git push origin master


*********
git clone新项目后如何拉取分支代码到本地

1、git clone git@git.n.xxx.com:xxx/xxx.git

2、git fetch origin dev    命令来把远程dev分支拉到本地

3、git checkout -b dev origin/dev   在本地创建分支dev并切换到该分支

4、git pull origin dev 就可以把远程dev分支上的内容都拉取到本地了

5、git push origin 分支名 把本地分支推到远程分支

 

*********
codeReview  在分支下新建分支并merge

现在有两个分支,主分支master和基于主分支的分支release
为了加强codereview,先需要在release分支下新建一个分支,通过merge让同组同事review后push到release
git checkout release //进入release分支

git checkout -b dev //以develop为源创建本地分支dev
git push origin dev //将本地dev分支作为远程dev分支

合并dev分支到release分支上:
首先切换到release分支,再执行: git merge dev
进入gitLab操作merge指令,从dev到release

git checkout dev //记得要回到开发分支dev


******************
git---主分支同步到子分支

在进行git项目协同开发的时候,每个分支的代码会被合并到主分支 master 分支上,但是如何将master分支上的代码合并到子分支上呢?
第一步:切换到本地的仓库,更新为最新的代码。
第二步:切换到要同步的子分支上。
第三步:在子分支上运行 git merge master 就会将主分支的代码同步到子分支上。
第四步:在子分支查看当前的代码状态 git status
第五步:git add . 将代码添加到本地仓库
第六步:git commit -m '主分支同步到子分支'
第七步:git push 将同步后的代码上传到git 服务器上托管。

******************
分支merge
在分支dev_wws
git push origin dev_wws
切换
git checkout release
git merge origin/dev_wws
在gitlab/github上merge操作(或者直接push操作 git push origin release)
切回dev_wws

****************** 

放弃本地修改,使用服务器代码覆盖本地的Git命令如下:
$ git fetch --all
$ git reset --hard origin/master
$ git pull

 

******************
Git强制提交本地分支覆盖远程分支
git push origin 分支名 --force

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值