Git 常用命令

Git 命令

git init

git init 命令初始化空仓库

git init

此时会创建一个.git文件夹

运行命令后, 显示如下

PS C:\Users\StarUIO\Desktop\git_test> git init
Initialized empty Git repository in C:/Users/StarUIO/Desktop/git_test/.git/

git status

git status 命令用于显示工作目录和暂存区的状态。它提供的信息包括:

  • 当前分支的信息
  • 有哪些文件被修改但尚未暂存
  • 有哪些文件已暂存等待提交
  • 未跟踪的文件

这个命令不会对仓库进行任何更改,只是显示当前状态,帮助你了解接下来的操作。

git status

运行命令后, 显示如下:

PS C:\Users\StarUIO\Desktop\git_test> git status
On branch master

No commits yet

nothing to commit (create/copy files and use "git add" to track)

git add

git add 命令用于将更改添加到暂存区,以便在下一次提交时包含这些更改。

常用选项

  • git add <file>:添加指定文件到暂存区。
  • git add (*).:添加当前目录下的所有更改。
  • git add -A:添加所有更改,包括删除的文件。

这一步通常在 git commit 之前使用,以确定哪些更改应该被提交。

git add .

在目录下创建文件java.txt, 使用git add java.txt命令, 再运行git status显示如下

PS C:\Users\StarUIO\Desktop\git_test> git status
On branch master

No commits yet

Changes to be committed:
(use "git rm --cached ..." to unstage)
new file: java.txt

git commit

git commit 命令用于将暂存区中的更改提交到本地仓库。

常用选项

  • git commit -m "commit message":使用一条消息提交更改。
  • git commit -a -m "commit message":跳过 git add,自动暂存已跟踪文件的更改并提交。
  • git commit --amend:修改最近一次提交的信息或添加新的更改。
git commit -m "***"

运行完git commit, 在运行git status, 显示内容如下:

PS C:\Users\StarUIO\Desktop\git_test> git commit -m "add java.test"
[master (root-commit) 23f4f0d] add java.test
1 file changed, 1 insertion(+)
create mode 100644 java.txt
PS C:\Users\StarUIO\Desktop\git_test> git status
On branch master
nothing to commit, working tree clean

git log

git log 命令用于查看提交历史记录。

常用选项

  • git log:显示完整的提交历史。
  • git log --oneline:以单行格式显示简洁的提交历史。
  • git log --graph:以图形化方式显示分支和合并历史。
  • git log -p:显示每个提交的差异。
  • git log --author="name":过滤特定作者的提交。
git log

运行git log, 显示如下:

PS C:\Users\StarUIO\Desktop\git_test> git log
commit 23f4f0d34850fac1fd0f14f53570e8de90b86ba6 (HEAD -> master)
Author: HuangJing staruio@qq.com
Date: Mon Dec 23 21:28:29 2024 +0800

add java.test

git checkout

git checkout 命令用于切换分支或恢复工作目录的文件。

常用用法

  • 切换分支

    git checkout <branch-name>
    
  • 创建并切换到新分支

    git checkout -b <new-branch-name>
    
  • 恢复文件: 恢复工作目录中的文件到最近的提交状态。

    git checkout <branch-name> -- <file-name>
    

请注意,git checkout 也可以用于检出特定的提交,但这会导致“分离的 HEAD”状态。对于新版本的 Git,使用 git switch 切换分支会更直观。

使用git log获取版本,git checkout []可以回到之前的,git checkout master回到最新的

复制上一个,暂存区替换,改变head和master。mater是分支。

git merge

  • git merge 会创建一个新的合并提交 (merge commit),将两个分支的历史记录连接起来。

    git merge feature
    
  • 主要的作用如下:

    A -- B (master)
          \
          C -- D (feature)
    
    # git merge feature
    
    A -- B -- C -- D (master, feature)
    
  • 目前只遇到了最简单的合并的情况,先记录一下。

git branch -D

git branch -D 可以删除一个本地或远程分支。

  1. 切换到非目标分支: 如果要删除的分支是当前所在的分支,先切换到另一个分支(例如 master 或 main)。
    git checkout master
    
  2. 删除本地分支:
    如果已合并且确认安全:
    git branch -d <local_branch_name>
    
    如果未合并或需要强制删除:
    git branch -D <local_branch_name>
    
  3. 删除远程分支 (如果存在且需要):
    git push origin --delete <remote_branch_name>
    # 或者
    git push origin :<remote_branch_name>
    
posted @ 2025-04-15 14:09  BuerH  阅读(22)  评论(0)    收藏  举报