git-学习笔记

1.创建工作区:

#进入相应的文件目录
git init

2.把文件放到(更新到)git仓库:

#同样要在对应得文件下 
git add test.txt  # 支持同时添加多个,文件名中间用空格分割。也可多次添加。
git commit -m "xxx"  # 一次性提交所有添加的文件。需要在-m后添加文件的说明。

3.查看仓库的当前状态:

git status

4.查看仓库的修改:

git diff

5.查看历史的提交版本:

git log  # 多行显示
git log --pretty=ontline  # 一行显示

6.回退版本:

git reset --hard HEAD^  # 回退至上一版本,因为win中^是换行符,所以不用这个。
git reset --hard HEAD^^  # 回退至上上一版本,因为win中^是换行符,所以不用这个。
git reset --hard HEAD~100  # 回退至前100版本 
git reset --hard 1094a  # 回到id为1094a。。。。的版本,可以只写前几位。

7.查看历史命令:

git reflog
# 可以查看到已经删除的版本的ID,从而恢复

8.回退工作区的修改:

git checkout -- file
#一种是文件自修改后还没有被放到暂存区,现在,
撤销修改就回到和版本库一模一样的状态;
#一种是文件已经添加到暂存区后,又作了修改,现在,
撤销修改就回到添加到暂存区后的状态。

9.把暂存区的修改撤销:

git reset HEAD <file>

10.删除文件:

git rm

11.同步到GitHub上:

# 第一次同步
git remote add origin git@server-name:path/repo-name.git
git push -u origin master


# 往后推送
git push origin master
# 强行推送
git push -f origin master

12:分支

#查看分支:
git branch
#创建分支:
git branch <name>
#切换分支:
git checkout <name>
git switch <name>
#创建+切换分支:
git checkout -b <name>
git switch -c <name>
#合并某分支到当前分支:
git merge <name>
#删除分支:
git branch -d <name>
#分支合并图
git log --graph
#当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
#解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。

13:修复bug

修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,
修复后,再git stash pop,回到工作现场;
在master分支上修复的bug,想要合并到当前dev分支
可以用git cherry-pick <commit>命令,把bug提交的修改“复制”到当前分支,
避免重复劳动。

14:新功能:

开发一个新feature,最好新建一个分支;
如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

15:多人协作开发:

1.首先,可以试图用git push origin <branch-name>推送自己的修改;
2.如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
3.如果合并有冲突,则解决冲突,并在本地提交;
4.没有冲突或者解决掉冲突后,再用git push origin <branch-name>推送就能成功!
  如果git pull提示no tracking information,
  则说明本地分支和远程分支的链接关系没有创建,
  用命令git branch --set-upstream-to <branch-name> origin/<branch-name>。

16:标签:

git tag <tagname>
用于新建一个标签,默认为HEAD,也可以指定一个commit id;
git tag -a <tagname> -m "blablabla..."
可以指定标签信息;
git tag
可以查看所有标签。
git push origin <tagname>
可以推送一个本地标签;
git push origin --tags
可以推送全部未推送过的本地标签;
git tag -d <tagname>
可以删除一个本地标签;
git push origin :refs/tags/<tagname>
可以删除一个远程标签。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值