git的一些操作

一.git工作原理/流程: 

workspace: (除去.git)看见的目录。

版本库(Repository):工作区有一个隐藏目录.git就叫版本库。其中版本库里面存了很多东西,最重要的就是stage(暂存区),还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。

1.使用 git add 把文件添加进去,实际上就是把文件添加到暂存区

2.使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。

二.一些操作命令

1.git init 

把目录变成git可以管理的仓库

2.git add

vim read.txt

git add 提交到暂存区

3.git commit

git commit把文件提交到仓库

git commit后,如何撤销commit_c46550的博客-CSDN博客_gitcommit后怎么撤销

4.git log --pretty=oneline

git log查看日志

其中上图黄色那一段就是版本号

5.git diff

git diff查看read.txt修改内容

继续添加内容

可以添加了内容22222,这下就可以放心

git add read.txt

git commit -m "read.txt添加22222" 

git log --pretty=oneline 查看日志

6.git reset --hard HEAD^ 

git reset --hard HEAD^ 回退到上一版本

read.txt 变为原先的。

 其中要注意的是 git reset --hard 版本号 。就可以回退到指定的版本。

7.git checkout (撤销修改)

比如添加55555发现添加错了,有三种解决办法。

(1)知道修改什么内容,修改回去,在add,commit。

(2)git reset --hard HEAD^ 恢复到上一版本。

(3)git checkout -- read.txt 可以丢弃工作区的修改。

发现read.txt恢复了。

8.删除版本库中文件

本地删除以后在commit就可以删除版本库中文件

git checkout 恢复删除的b.txt

9-1 首次push

需要先连接远程仓库

git remote add origin https:xxx

在push

git push -u origin master

9-2.再次push git push

将本地库内容推送到远程。

由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令

查看github仓库。

从现在起,只要本地作了提交,就可以通过如下命令注意没有-u拉:

git push origin master  

比如vim c.txt

git add c.txt

git commit -m "添加c.txt"

git push origin master

10.git branch

查看分支

其中带*代表当前的分支.

git branch -l :查看本地分支
git branch -r :查看远程分支
git branch -a :查看全部分支(远程的和本地的

11.git checkout -b dev

相当于创建dev分支,然后切换到dev分支上.

master代表稳定分支,一般新建dev分支干活,dev分支稳定以后在发布上去与master分支合并。

和如下两个命令一致:

git branch dev

git checkout dev

12.git merge

在dev分支下

vim read.txt增加内容

git checkout master 切换到master分支

在合并分支

git add read.txt

git commit -m "修改test.txt"

git push origin master  (推送到master分支)

即可将新的分支内容合并上master。

13.git branch -d 分支名

删除本地分支

删除远程仓库分支

git push origin --delete skeleton

14.查看远程库信息

git remote

查看远程库详细信息

15.删除git上面内容

(1).对需要删除的文件、文件夹进行如下操作:

git rm test.txt (删除文件)

git rm -r test (删除文件夹)

(2).提交修改

git commit -m "Delete some files."

(3).将修改提交到远程仓库的xxx分支:

git push origin xxx

16.将其他分支内容拷贝到本分支

git checkout other_branch -- ./mdet/models/neck

17.更新子项目

git submodule update --init --recursive

18.合并多个commit

Git rebase合并多条commit记录_书忆江南的IT博客-CSDN博客_git rebase合并commit1

19.删除commit的大文件

git filter-branch -f --index-filter "git rm -rf --cached --ignore-unmatch FOLDERNAME" -- --all

文件或者文件夹位置替换掉那个FOLDERNAME就可以 

移除错误缓存
首先应该移除所有错误的 cache,对于文件:

git rm --cached path_of_a_giant_file

对于文件夹:

git rm --cached -r path_of_a_giant_dir

21.新建本地分支与远程分支同步

Git 修改本地分支和远程分支名称_快乐征途的博客-CSDN博客_本地分支改名

 git checkout -b fzh/skeleton origin/fzh/skeleton

22.将新建的本地分支关联到远程分支(push 即可,push之后才可以pull)

git push origin branch_dev_local:branch_dev_remote

直接使用git push origin branch_dev 则默认和远程分支同名

23.主线一直更新(同步自己分支)解决方案

git rebase -i origin/dev 出现冲突 我修复冲突以后 在git rebase --continue

参考这篇文章

一个不错的教程

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值