git的使用

git的常用命令

1、git add .
add错了,全部撤销:git reset HEAD

2、git commit -m “备注”
commit撤销:
1.查询到commit的id : git log
2.撤销提交和代码:git reset -hard id

3、git push
可以通过revert或者reset进行修复,但是影响很不好,如果代码多,确认起来也非常麻烦

git分支管理

4、查看本地分支:git branch
5、查看远程所有分支:git branch -a
6、本地分支切换:git checkout 分支名称
7、拉取新的远程分支到本地分支,并在本地创建一个新分支:git checkout -b 本地分支名称 origin/远程分支名称 注:这两个分支名称最好一致

8、创建分支并切换到新的分支:git checkout -b 新分支名称
例:当前是dev分支,git checkout -b local,就从dev分支copy了一个新的local分支。

注意:新建的一个分支需要和远程分支关联,否则推送的时候回报错。
git branch --set-upstream dev origin/dev,如果次方式不能实现推送,执行下面命令:
git push -u origin dev

9、合并分支:
例—:当前在dev分支,合并loocal分支:git merge local。可能需要解决冲突

10、冲突的解决:需要自己管理查看

<<<HEAD
这里是拉取下来的代码

这里是自己的代码
=>>>MY

11、将远程dev分支合并到本地的local分支:当前在local分支上:git merge origin/dev

12、如何创建一个远程分支:
1)、在本地创建新的分支:git checkout -b test
2)、将本地分支推送到远程分支上,并创建新的远程分支test:git push origin test:test
如何删除远程分支:
推送一个空的分支到test:git push origin :test

13、删除本地分支
git branch -d test
强制删除:git branch -D test

14、git remote -v,可以查看你当前项目的远程git地址

15、git fetch 将远程分支的更新全部取回到本地
git fetch命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响。
默认情况下,git fetch取回所有分支(branch)的更新。如果只想取回特定分支的更新,可以指定分支名。
git fetch <远程主机名> <分支名> =========>>> 例:git fetch origin dev

1、branch

$:git branch 不带参数:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记
git branch -r 列出远程分支
git branch -a 列出本地分支和远程分支
git branch newbranch(newname) 创建一个新的本地分支,需要注意,此处只是创建分支,不进行分支切换
git branch -m | -M oldbranch newbranch 重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名
git branch -d | -D branchname 删除branchname分支
git branch -d -r branchname 删除远程branchname分支


2、checkout
$:git checkout b1 //进入master分支
git checkout -b fromb1 //以b1为源创建分支fromb1,并切换到fromb1
git remote add origin ssh://git@dev.lemote.com/rt4ls.git //添加远程origin分支
git remote -v //查看所有的远程仓库
git remte origin set-url URL //修改远程分支命令
git push origin master //推送master到origin分支
git push origin test:test // 提交本地test分支作为远程的test分支
git push origin :test // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心
git fetch origin master //从远程的origin的master主分支下载最新的版本到origin/master分支上 当前分支指向的FETCH_HEAD,
git diff master origin/master //比较两个分支或看看本地分支和远程分支的差异
git rebase origin/master // 改写当前分支的历史版本与origin/master保持一致 此方法可以维持树形结构但是不会merge操作,会完全覆盖上一版本


3、diff

$:git diff //可以产看当前没有add 的内容修改
git diff --cached //查看已经add 没有commit 的改动
git diff master origin/master //比较两个分支或看看本地分支和远程分支的差异
git log test.txt //查看某个文件的日志


4、clone

$:git clone xxx.git //clone 到当前路径
git clone xxx.git “指定目录” //clone到指定目录
git clone -b [new_branch_name] xxx.git //clone时创建新的分支替代默认Origin HEAD(master)

5、文件操作:

git add //添加文件
git rm //删除文件
git commit a.txt -m ‘v1’

  • git revert HEAD 撤销前一次 commit
  • git revert HEAD^ 撤销前前一次 commit
  • git revert 5dfb61e9c5a074ace72998f384915c0b00ae6487(比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进行保存。
    git reset –hard fcd23f90c229a63ea457b65ab39d18d8a29824d1 //彻底回退到某个版本,本地的源码也会变为上一个版本的内容
    git log --pretty=oneline >> log.txt //可列出代码的所有改动历史,将他保存到一个文件中
    git reset --hard fcd23f90c229a63ea457b65ab39d18d8a29824d1 :远程仓库的目录下对应的文件还是之前的内容,必须得使用git reset --hard才能看到push后的内容.reset是指将当前head的内容重置,不会留任何痕迹。
    git reset -–soft fcd23f90c229a63ea457b65ab39d18d8a29824d1 :回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

解决push时 refusing to update checked out branch: refs/heads/master
git config receive.denyCurrentBranch ignore
解决add时 warning: LF will be replaced by CRLF in XXXXXXXXXXXXXX.
git config core.autocrlf false


Git过滤文件和文夹

第一步:添加".gitignore"文件

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值