git学习笔记

等我视频:

1.安装完git之后设置一下用户名和密码

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

2.把文件夹变成git仓库

git init

3.添加文件

git add hello.txt

4.推送文件

git commit -m "add a new file"

5.查看当前仓库的状态

git status

6.查看修改内容

git diff

7.查看版本信息

git log

8.回退某个版本

git reset --hard commit_id

9.查不到以前版本的commi_id了怎么办?查看命令历史

git reflog

10.查看工作区的文件和版本库里面的暂存区内文件的差别

git diff HEAD --readme.txt

11.撤销修改,这里分为两种情况,如果你已经add了,就撤销到你add时候的状态,如果你还木有add,那就撤回到你上次commit的状态。下面代码的本意就是撤销到该文件的上一步操作。

git checkout -- readme.txt   //  -- 前后一定要有空格哦

12.add文件之后返回add之前的时候

git reset HEAD readme.txt

13.删除文件分为两种,rm和git rm

git rm test.txt  //发现误删

git checkout -- test.txt   //利用checkout撤回到test.txt存在的时候
git rm test.txt      //利用git rm删除,版本库里面直接没有了,不可撤销
git commit -m "rm test.txt"

14.创建公钥和密钥

$ ssh-keygen -t rsa -C "youremail@example.com"

15.关联远程仓库

git remote add origin git@github.com:YouName/repo-name.git   //我这里使用的是github

16.推送本地仓库到远程仓库

git push -u origin master  //第一次的时候加 -u 是为了两个仓库之间建立联系,以后就不要-u了

git push origin master  //这是后面的,不要加-u了

17.从远程仓库上面克隆一个本地仓库

git clone git@github.com:YourName/rep_name.git

18.分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

19.解决分支冲突

我新建了一个分支feature1,在readme.txt里面添加了

hello and miss

然后切换回主分支,在readme.txt里面添加了

hello & miss

现在我合并这两个分支,是肯定会起冲突的,可以用git status 查看冲突的文件,也可以cat文件看冲突的部分

手动修改之后就可以提交了

git log --graph 可以查看分支合并图

20.分支管理策略

合并分支的时候,加上 --no-ff 禁用快速合并可以commit一次合并历史

git merge --no-ff -m "merge with no-ff" dev

如果你用的是Fast forward模式就不会有合并历史的分支,建议使用 --no-ff

21.保存你现在的工作内容,这样你就可以切换分支去改Bug了

git stash

还原我们的工作内容

//方法一
git stash apply   //恢复工作内容
git stash  drop   //删除stash存储的东东

//方法二
git  stash  pop    //直接恢复内容并删除stash里面的东东


//查看stash里面存的神魔
git  stash  ist

//多次stash恢复的时候可以先list然后呢
git stash apply stash@{0}

22.强行删除未合并的分支

git branch -D feature  

23.多人协作

24.建立标签

当前的commit打标签

git tag v1.0

给某一个commit版本打标签

git tag v0.9 e6263...

查看当前的tag的状态

git tag

查看某个标签的详细信息

 git show v0.9

创建带说明的标签

git tag -a v0.1 -m "version 0.1 released" 3628164

用私钥签名一个标签

 git tag -s v0.2 -m "signed version 0.2 released" fec145a  //这个是采用的PGP签名,需要安装gpg 没有的话会报错,怎么安装自己搜去吧

25.操作标签

删除本地标签

git tag -d v0.1

推送标签到远程仓库

git push origin v0.1  //推送一个标签

git push origin --tags    //推送全部的标签

删除远程仓库里面的标签

git tag -d v0.1   //先删除本地的标签

git push origin :refs/tags/v0.9   //删除远程仓库上的标签

26.配置别名

git config --global alias.st status   //把status配置别名成st 注意那个小点点.......

后面的就没啥记忆的了。什么时候能有自己的房间呢?我想弹琴编曲录音做视频.........

原文地址:https://www.cnblogs.com/yunquan/p/7269521.html