git学习笔记

150 阅读4分钟

git下载地址

1、创建文件夹

    // 在当前目录创建一个文件夹
    $ mkdir [project-name]

1、 配置命令:

    git config --global user.name "xxx"
    git config --global user.email xxxxxxxxxx@163.com
    git config --global http.postBuffer 2M // 最大上传文件的大小
    git config --global color.ui true

2、 查看配置:

    git config --list
    cat ~/.gitconfig // 查看配置文件

3、 直接修改配置文件

    vim ~/.gitconfig
    • 配置文件内容如下:

    [user]
            email = 19805159366@163.com
            name = SEUZTh
    [https]
    [http]
            postBuffer = 2M

4、 删除配置

    git config unset --global user.name

1、 初始化

    • 使用当前目录作为Git仓库,我们只需使它初始化。
    git init
    • 该命令执行完后会在当前目录生成一个 .git 目录。
    • 使用我们指定目录作为Git仓库。
    git init newrepo

2、 查看生成的.git目录

    cd .git
    ls
    除了config这个文件,.git的作用就是存储项目级别的配置信息。

3、 提交目录下所有文件

    git add .

4、 提交指定文件

    git add xxx.格式

3、 查看状态

    git status

3、 帮助

    git help log  //查看log详细使用手册

4、 提交添加说明

    git commit -m '说明'
    git commit -am '说明' // add + commit

5、 查看历史提交 todo

    git log
    // f 键向下翻页,b键 向上翻页,q 键退出显示。
    git log --oneline
    git log --oneline -行数
    git log --oneline --author="作者"
    git log --oneline --graph // 图形效果
    git log --oneline --decorate
    git log --oneline --decorate --all
    git log --oneline --decorate --all -19 --graph 
    // 查看10条,所有分支的历史提交
    git log --oneline --grep='内容' // “内容”为说明中所写到的。
    git log --oneline --before='2021-08-03' // 2021.08.03之前的提交
    git log --oneline --before='1 week' // 1周之前的提交
    git log --oneline --before='3 days' // 3天之前的提交

6、 查看修改前后的区别

    git-diff
    加号表示添加的内容,减号表示删除的内容。
    即使是修改某一行,也会显示删除和添加。

7、 删除了某文件

    git rm xxx.格式

7、重命名某文件

    git mv 旧文件.格式 新文件.格式

8、移动文件或目录

    git不会跟踪空白目录,新建目录后,查看状态时不会提示有新文件夹。
    git mv xxx.格式 新文件夹/
    git mv 旧文件夹 新文件夹/

9、恢复单个文件

    git checkout HEAD -- xxx.格式  // HEAD代表最近的一次提交,--表示当前分支
    git checkout HEAD^ -- xxx.格式 // ^表示上一次提交,两个^^上上次

1、 回滚到某个版本号

    git revert 版本号

1、 将版本指向某个版本号

    git reset --soft 版本号 
    // todo 将指针指向id这次提交,再次提交,会覆盖掉id号后面的提交。 
    
    git reset --mixed 版本号
    // 把工作区和暂存区直接重置到一个提交的状态。
    
    git reset --hard 版本号
    // 会发现工作目录干净了。

1、 查看项目所有的分支

    git-branch
    git branch -a // 查看本地所有分支
    git branch -r // 查看远程分支

1、 创建新分支

    git branch xxx

1、 切换分支

    git branch xxx

1、 查看分支区别

   git diff master..某某某

1、 查看两个分支的同一文件的区别

   git diff master..某分支 某文件  

1、 合并某分支到master

   git merge master

1、 分支改名

   git branch -m 已经存在的分支 新名字

1、 删除分支

   git branch -d 某分支

1、 看到有已经修改过的,但想修改其他的提交,并不想提交它,就保存当前进度:

   git stash save '修改了某某文件'

1、 查看保存的工作进度的列表

   git stash list

1、 对比工作进度和现在目录的区别

   git stash show -p stash@{代号} // 代号使用git stash list查看

1、 对比工作进度和现在目录的区别

   git stash show -p stash@{代号} // 代号使用git stash list查看

1、 恢复工作进度

   git stash apply stash@{代号}

1、 删除工作进度

   git stash drop stash@{0}

1、 恢复工作进度时直接删除工作进度

   git stash pop stash@{代号}

1、 恢复工作进度时直接删除工作进度

   git stash pop stash@{代号}

1、 给常用命令添加别名

  git config --global alias.co checkout // 给checkout设置别名为alias:

1、 查看配置

  cat ~/.gitconfig

1、 让Git忽略某个文件 todo

    git config --global core.excludesfile ~/.gitignore_global
    vi ~/.gitignore_global

1、 查看以.开头的文件

    ls -la

1、 连接远程地址

    git remote add origin 远程代码库地址

1、 查看远程地址

    git remote -v

1、 移除远程地址

    git remote rm 远程名

1、 推送master

    git push -u origin master
    git push -u origin 某分支

1、 克隆仓库

    git clone https://xxxx.git

1、 克隆仓库

    git clone https://xxxx.git

1、 本地修改主分支名称

    //2020年GitHub上的主分支的名称从 master 改为了 main ,但是 Git 的主分支名       //称仍是 master,在本地修改主分支名称的方法如下:
    git branch -M main

1、 配置代理

    set https_proxy=127.0.0.1:7890
    
    // socks5代理
    git config --global http.proxy 'socks5://127.0.0.1:port'
    git config --global https.proxy 'socks5://127.0.0.1:port'

1、 第一次 push 代码的步骤

    git init
    git add .
    git commit -m '说明'
    git remote add origin https://xxx.git
    git push -u origin main