git实际操作

3 篇文章 0 订阅
2 篇文章 0 订阅

1、git add 使用:
git add 文件 ,添加所有文件的话:git add .
注:add(可以新增新的文件, 也可以将更新的文件提交到仓库),也就是说添加、修改文件都用add

2、Git commit -m “备注”
git commit --amend 重新commit

3、git push 将提交代码提交到代码库
Git push origin HEAD:refs/for/master

4、代码回滚操作 git rever/reset

  • git reset --soft (commit id) 跟上要回滚的commit id
    这样就成功撤销了commit,如果想要连着add也撤销的话,–soft改为–hard(删除工作空间的改动代码)。 git reset
    –soft 操作完之后,会把commit文件放回到待commit里边。
  • git revert和git reset的区别就是revert 是将之前的提交反转(新增就删除),然后作为一次新的提交;reset commit_id是回滚到该commit_id下,该commit_id之后的提交都会删除。
  • git revert -n commit_id ,若出现is a merge but no -m option was given
    这是因为你revert的那个commit是一个merge commit,它有两个parent,
    Git不知道base是选哪个parent,就没法diff,所以就抱怨了,所以你要显示告诉Git用哪一个parent。
  • 则 git revert -n commit_id -m 1 这样就选parent 1,那么parent 1又是哪一个呢?
    一般来说,如果你在master上merge branch_xxx,那么parent 1就是master,parent
    2就是branch_xxx.
  • git reset HEAD
  • git add.
  • git commit -m “xxx”
  • git push origin HEAD:refs/for/分支

5、删除文件/删除本地分支/删除远程分支

  1. 删除git文件:git rm xx.php 删除文件 ===> 然后走 git add ===> git commit -m
    “” ===> git push
  2. 删除本地分支:git branch -D 分支名
  3. 删除远程分支:git push origin –delete 分支名

6、Git branch 以及分支的用法:
git pull 取回远程主机某个分支的更新,再与本地的指定分支合并

  1. 获取当前以及远程分支信息:git branch -a

  2. 获取远程分支信息:git branch -r

  3. 获取当前分支信息:git branch
    查看本次提交文件与上次的区别:git diff --color x.php
    切换分支: git checkout 分支号

  4. 直接将其他分支的 commit_id 在当前分支上提交: git cherry-pick commit_id 这样就不用再在当前分支添加文件,提交。
    ==> 最后直接git push 就哦了,但是这个命令只是想当于 commit 需要合入才能diff.

  5. 更新远程库到本地库: git fetch (后边可以选择分支) git fetch --help (帮助命令: xxxx
    –help)

  6. 本地创建分支: git branch 分支名称

  7. 本地创建分支并且切换分支: git checkout -b 分支名

  8. 删除本地分支:git branch -d 分支名

  9. 合并分支:git merge [name] ----将名称为[name]的分支与当前分支合并

  10. 将远程代码更新下来做对比合并:
    (1)查看远程仓库:git remote -v
    (2)从远程获取最新版本到本地:

  11. git fetch origin master
    使用如下命令可以在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支

  12. 比较本地仓库与下载的temp分支 使用如下命令来比较本地代码与刚刚从远程下载下来的代码的区别:

7、git show用法
Gti show展示提交commit的代码。
git show --color

8、Git 的解决冲突以及更新代码
在本地仓库中,更新并合并代码

1、先git fetch origin 更新线上代码
2、git stash 将工作区的代码进行暂存
2、git rebase origin/master 将主干代码进行合并
4、依据提示打开、解决冲突代码
5、解决完之后 git add 文件 以及 git rebase --continue
6、Git push 代码
7、最后 git stash pop 将暂存的代码再取出来

9、Git 的gitconfig的配置

项目代码块git配置

10、Git pull 使用:
作用:取回远程主机某个分支的更新,再与本地的指定分支合并。
一句话总结git pull和git fetch的区别:git pull = git fetch + git merge

基本用法:
1、git pull <远程主机名> <远程分支名>:<本地分支名>
Eg: git pull origin master:brantest
将远程主机origin的master分支拉取过来,与本地的brantest分支合并。
Git pull origin maste 获取主干信息并且和当前本地分之合并。

11、git reset
是回到某次提交,提交及之前的commit都会被保留,但是此commit id之后的修改都会被删除

p12、如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
git stash
git pull
git stash pop
此时可能会冲突,需要手动修改冲突;也有可能git自动merge了。修改过后再次pull,add,commit,push就可以啦

13、解决git pull 发生冲突的文件
Git checkout 回退文件,这个是将文件回退到最新文件,不过本地改的代码也不存在了。 直到git pull 成功呢

14、解决工作区的文件为添加到git
git clean -d -fx
即可。可能很多人都不明白-d,-fx到底是啥意思,其实git clean -d -fx表示:删除 一些 没有 git add 的 文件;

git clean 参数 
-n 显示将要删除的文件和目录;
-x -----删除忽略文件已经对git来说不识别的文件
-d -----删除未被添加到git的路径中的文件
-f -----强制运行
git clean -n
git clean -df
git clean -f

15、git将add的文件去掉,拿下去

git reset HEAD 文件地址
执行完命令,就会放回到changed but not updated

16、git reflog
git reflog 可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)

例如执行 git reset --hard HEAD~1,退回到上一个版本,用git log则是看不出来被删除的commitid,用git reflog则可以看到被删除的commitid,我们就可以买后悔药,恢复到被删除的那个版本。

17.git删除未跟踪文件

删除 untracked files

git clean -f

连 untracked 的目录也一起删掉

git clean -fd

连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)

git clean -xfd

在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删

git clean -nxfd
git clean -nf
git clean -nfd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值