参考:Git速查
git的基本概念
git常用命令大部分是基于三大分区来执行的。先来了解一些专有名词吧。
- 工作区,也叫 Working Directory
- 暂存区,也叫 stage,index
- 版本库,也叫本地仓库,commit History
将代码推送到github仓库
参考:添加文件到仓库
-
打开git bash,进入项目目录
-
执行命令初始化本地仓库
bashgit init git add . git commit -m "Your comment"
-
复制你的github仓库地址
<URL>
-
关联本地与远程仓库:
-
对于public仓库,将本地仓库与远程仓库关联起来
bashgit remote add origin <URL>
-
对于private仓库,将本地仓库与远程仓库关联起来
persional access token请前往github的个人设置,开发者选项
bashgit remote add origin https://{USERNAME}:{PERSIONAL_ACCESS_TOKEN}@github.com/username/reponame.git ## 可能还需要保存凭证依据 git config --global credential.helper cache git config --global credential.helper 'cache --timeout=3600'
-
要修改url可以:
bashgit remote -v #查看 git remote set-url origin <new_url> #修改 git remote remove origin # 删除
-
-
更改为main分支
bashgit branch -M main
-
将本地的提交推送到github仓库
bashgit push -u origin main -f
分支相关
-
查看当前分支
bashgit branch
-
重命名当前分支
bashgit branch -M <new_name>
-
更换当前使用的分支
bashgit checkout <branch_name_you_want_to_use>
查看修改与记录
-
查看未提交的更改:显示工作目录中有那些文件被修改了,哪些文件被添加了,以及哪些文件还没有被提交
bashgit status
-
查看具体的文件更改:显示工作目录中所有未暂存的更改内容。它会详细显示每个文件中哪些行被添加、删除或修改了。
bashgit diff git diff filename #只想查看特定文件的更改,可以指定文件名
-
查看暂存区的更改:显示已经被添加到暂存区(staging area)但还没有提交的更改内容。
bashgit diff --staged
-
查看提交记录
bashgit log git log -p #查看每次提交的更改内容 git log -p filename #查看具体文件的修改历史 git log -n 5 #查看最近的五次提交日志
gitignore文件
.gitignore
文件用于告诉 Git 哪些文件或目录不应该被版本控制系统跟踪。其格式非常简单,每行一个规则,可以包含文件名、目录名、通配符等。
基本格式
每行一个规则:
- 空行或以
#
开头的行会被忽略。 - 以
/
开头表示相对于仓库根目录。 *
匹配零个或多个字符。**
匹配零个或多个目录,包括子目录。?
匹配单个字符。[abc]
匹配方括号中任意一个字符。- 以
!
开头表示取反,即不要忽略这些文件或目录。
例如:
gitignore
### custom ###
/logs/**
/src/main/resources/application-dev.yml
如果已经将应该被忽略的文件提交到了 Git 仓库,修改 .gitignore
后并不会自动将已提交的文件从仓库中删除。
以下是一种常见的方法来处理这种情况:
bash
# 清理缓存
git rm -r --cached .
# 将所有忽略文件再次加入暂存区
git add .
# 提交更新
git commit -m "更新 .gitignore 文件并清理已跟踪文件"
git push --force