likes
comments
collection
share

Git 学习之路

作者站长头像
站长
· 阅读数 50

刚入职那会儿,git 一点儿不熟悉,但是还要用,很是害怕。每次更新代码都会冲突,又不会解决、甚至覆盖过别人的代码、头皮发麻。 实习结束我才知道,push 之前要先 pull 一下。。。 今天刚好又学到一个关于git commit 挺好用的命令,就一起总结一下吧。

Git

更新 | git pull

执行 git pull 命令可以将远程仓库的更新拉取到你的本地仓库。一般情况下,git pull 命令会自动执行两个步骤:git fetchgit merge

添加 | git add

git add 命令用于将工作目录中的文件添加到 Git 的暂存区(Staging Area)。这个暂存区是一个中间状态,它存储了你想要包含在下一次提交中的文件的快照。

  1. 添加单个文件

    git add <file>
    

    这会将指定的 <file> 添加到暂存区。你可以通过文件的路径指定文件,也可以使用通配符来添加多个文件。

  2. 添加当前目录下所有文件

    git add .
    

    这会将当前目录中的所有修改过的文件都添加到暂存区。这个命令会递归地添加所有文件,包括子目录中的文件。

  3. 交互式添加文件

    git add -p
    

    这个命令会启动一个交互式的界面,让你逐个检查修改,并决定是否要将每个修改添加到暂存区。这对于选择性地暂存部分修改非常有用。

  4. 添加文件的部分内容

    git add -p <file>
    

提交 | git commit

git commit 命令用于将暂存区中的文件快照永久地保存到 Git 仓库中,创建一个新的提交。每次提交都包含了你的修改以及一个描述这些修改的提交信息

  1. 基本用法

    git commit -m "Commit message"
    
  2. commit 信息为固定文件格式

    git commit -F path
    
  3. 提交所有更改并添加信息

    git commit -am "Commit message"
    

    这个命令会将所有修改过的文件添加到暂存区,并创建一个新的提交。它会自动将所有已经跟踪的文件的修改添加到暂存区,然后提交它们,并附带指定的提交信息。

    几乎相当于 add + commit

  4. 修改最后一次提交

    git commit --amend
    

    如果你需要修改最后一次提交的提交信息,可以使用这个命令。它会打开文本编辑器,让你编辑最后一次提交的提交信息。可以add 多次 commit 多次 只push一次

合并

| git merge

git merge 命令用于将一个分支的历史合并到另一个分支中。它将两个不同分支的历史线合并在一起,创建一个新的提交,将两个分支的内容整合在一起。

git merge branchName

| git rebase

git rebase 命令用于将一个分支的提交移动到另一个分支上,并且重放(replay)这些提交。这个命令的主要作用是将一个分支的提交历史应用到另一个分支上,以便产生一个更加线性的提交历史。

git rebase branchName

merge 是讲主分支的代码合并到本地分支、rebase 是讲 本地分支更新到主分支,如果 本地分支已经存在 commit 并且 合入云端分支,谨慎使用 rebase

暂存 | git stash

git stash 命令用于将当前工作目录中的修改(包括已跟踪和未跟踪的文件)保存到一个临时区域中,从而使你可以在不提交这些修改的情况下切换到其他分支或者进行其他操作。git stash 的主要作用是暂时保存你的工作进度,以便稍后恢复。

  1. 基本用法

    git stash
    
  2. 添加 信息

    git stash -m "message"
    

    为每个 stash 添加一条描述信息。这个描述信息可以帮助你更好地理解每个 stash 中保存的工作进度

  3. 查看 stash

    git stash list
    

    这个命令会列出所有保存在 stash 中的工作进度,并显示每个 stash 的索引号和描述信息

  4. 应用最新的stash

    git stash apply
    

    这个命令会将最新的 stash 应用到当前工作目录中,但不会从 stash 列表中移除该 stash。这意味着你可以多次应用同一个 stash

  5. 应用特定的 stash

    git stash apply stash@{n}
    

    这个命令会将指定索引号为 n 的 stash 应用到当前工作目录中。这允许你从 stash 中选择特定的工作进度来应用

  6. 删除最新的stash

    git stash drop
    

    这个命令会删除最新的 stash,从 stash 列表中移除它。这意味着你无法再次应用这个 stash

切换分支\文件 | git checkout

切换分支

  1. 查看分支

    git branch
    
  2. 切换分支

    git checkout branchName
    

恢复文件

  1. 单个文件

    git checkout fileName
    
  2. 当前目录下的所有文件

    git checkout .
    

其他

  1. 查看log | git log

    git log
    

    git log: 这个命令用于查看提交历史。它会列出当前分支的提交记录,包括每个提交的作者、提交时间、提交信息等

  2. 重置当前分支指针 | git reset

    git reset HEAD
    

    撤销上一次的提交,但保留修改

    git reset HEAD~num
    

    撤销上 num 次的提交

    git reset commit_id
    

    配合 git log 使用,讲分支充值到 commit_it 提交之前

辅助

  1. 设置本地用户名

    git config --local user.name "Your Name"
    
  2. 设置本地邮箱名

    git config --local user.email "your_email@example.com"
    

git commit 使用模板

  1. 创建模板文件

  2. 设置模板路径

    git config --global commit.template /home/xxx/commit.template
    
  3. 设置编辑器

    git config --global core.editor vim  //这里设置vim,也可以设置text,egit等其他编辑器
    

    Windows 下记得使用双斜杠

转载自:https://juejin.cn/post/7377745174137602086
评论
请登录