Git与Gitee的交互及配置忽略文件
将本地项目提交到Gitee
1、创建一个新的仓库:首先,在Gitee上创建一个新的仓库。
2、初始化本地项目
为Git仓库:这将在项目目录中创建一个名为".git"的隐藏文件夹,用于存储Git的相关配置和版本信息。
git init
3、将项目文件添加到暂存区:执行以下命令将项目文件添加到Git的暂存区:
这将会添加所有文件到暂存区。如果你只想添加特定的文件,可以将"."替换为文件路径或文件名。
git add .
4、提交文件到本地仓库:执行以下命令将暂存区中的文件提交到本地仓库,并添加提交信息:将"提交信息"替换为你对本次提交的描述,可以是任意文本。
git commit -m "提交信息"
5、关联本地仓库与远程仓库:执行以下命令将本地仓库与你在Gitee上创建的仓库进行关联:
git remote add origin 仓库地址
6、推送到远程仓库:执行以下命令将本地仓库的内容推送到远程仓库:
在执行推送命令时,如果提示需要登录Gitee账号,请输入你的Gitee账号用户名和密码进行身份验证
git push -u origin master
从Gitee克隆项目到本地
待完善
配置git忽略文件
创建
在根目录下创建 .gitignore 文件,在.gitignore 文件下添加如下配置
语法规范
以/
开头忽略当前目录下的文件,但不包括子目录下的文件
以/
结尾忽略目录下所有文件及内容,不管是根目录或子目录都会被忽略
以 #
开头表示注释
以 *
匹配零个或多个字符
以 ?
匹配单个字符
以 []
匹配括号内的任一字符
!
表示不忽略(跟踪)匹配到的文件或目录
不添加任何符号表示直接忽略当前目录下的这个文件
# 前端开发常用的配置如下
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
package-lock.json
yarn.lock
.gitignore 规则不生效
.gitignore 只能忽略那些原来没有被追踪(tracked)的文件,如果某些文件已经被纳入了版本管理中,则修改 .gitignore 是无效的。
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
你想添加一个文件到Git,但发现添加不了,原因是这个文件被.gitignore忽略了:
$ git add App.class
The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.
如果你确实想添加该文件,可以用 -f 强制添加到Git:
$ git add -f App.class
或者你发现,可能是.gitignore写得有问题,需要找出来到底哪个规则写错了,可以用git check-ignore命令检查:
$ git check-ignore -v App.class
.gitignore:3:*.class App.class
Git会告诉我们,.gitignore的第3行规则忽略了该文件,于是我们就可以知道应该修订哪个规则。
忽略已提交文件中的变化
临时忽略变更
在开发阶段,有时候需要临时忽略本地仓库中已提交的文件的变更。例如,你的配置文件与本机的工作环境或者项目配置有关,那么这个操作就非常有用:
git update-index --skip-worktree <file>
当然也可以恢复文件的追踪:
git update-index --no-skip-worktree <file>
也可以通过以下方式进行。这主要是为了防止文件被开发者修改。
关闭变更追踪:
git update-index --assume-unchanged <file>
恢复变更追踪:
git update-index --no-assume-unchanged <file>
永久忽略文件变更
如果一个文件已经被 Git 跟踪,那么再将这个文件添加到 .gitignore 中并不会忽略文件变更。你还需要从Git 暂存区(index)中移除这个文件的信息,步骤如下:
在 .gitignore 中添加这个文件需要先从暂存区移除文件信息:
git rm --cached <file>
提交删除文件和更新的 .gitignore 到您的仓库