简介
git 能实现本地代码多个更改版本的管理。本文包括三类项目的管理:
- 克隆别人的项目
- 自己创建的本地项目
- 本地管理个人的在线项目
最后是删除git项目
克隆别人的项目
-
克隆原始项目
首先,从远程仓库克隆项目到本地:git clone https://github.com/libo-huang/eTag.git cd eTag
-
添加上游仓库
将原始项目的远程仓库添加为上游仓库:git remote add upstream https://github.com/libo-huang/eTag.git # 更改远程URL为SSH git remote set-url origin git@github.com:libo-huang/eTag.git
可以使用 git remote -v 命令查看远程仓库配置:
git remote -v
-
创建新分支
在本地创建一个新的分支:# 在当前位置创建分支 git checkout -b libo # 使用哈希值创建新分支(回退项目到<commit-hash>版本,该版本由新建的分支头指示) git log -—oneline # 查看项目中所有的<commit-hash>版本,使用`q`退出查看 git checkout -b libo <commit-hash> # 回退到<commit-hash>版本,并由libo分支头指示 git branch # 查看当前分支 # git checkout <branch-name> # 切换到<branch-name>分支 # 删除分支(慎重使用) git branch -d <branch-name> # 如果分支被合并可实现删除 git branch -D <branch-name> # 如果分支没有被合并,强制删除 git push origin --delete <branch-name> # 删除远程分支
-
设置忽略项
某些文件或者目标不需要被版本控制,需要使用 .gitignore 文件。
项目根目录下创建名为.gitignore
的文件(如果改文件已经存在,可打开编辑它)# 添加忽略规则 *.log # 忽略所有.log文件 tmp/ # 忽略tmp目录 secret.py # 忽略特定文件 # 使已跟踪的文件被忽略 # 1. 移除已跟踪的文件(从版本控制中移除,但保留他们的本地文件内容) git rm --cached filename git rm --cachedd -r directory/ # 2. 更新 .gitignore 文件(在.gitignore文件中添加被移除文件或目录的路径) # 3. 提交更改(提交对.gitignore文件和移除文件的更改) git add .gitignore git commit -m "Update .gitignore to ignore specific files"
python项目中的常用忽略
# .gitignore .DS_Store __pycache__ datasets/ checkpoint/ *DEBUG/
-
修改和更新
# 切换分支 git checkout libo # 修改添加与确认 git add . # 添加 git commit -m ‘xxx’ # 确认 # 复制备份分支:先复制切换好的分支文件到target-folder并进入 cp -r . /path/to/target-folder cd /path/to/target-folder # 重置head到<commit-hash> git reset --hard <commit-hash> # 内容暂存与恢复 git stash # 暂存 git stash list # 查看暂存内容 git stash apply # 恢复
自己创建的本地项目
-
本地创建 Git 仓库.
1.1 创建一个新的项目目录:
mkdir my_new_project cd my_new_project
1.2 初始化一个新的 Git 仓库:
git init
这将在当前目录中创建一个新的 Git 仓库,您会看到一个名为 .git 的隐藏文件夹。
1.3 添加文件到 Git 仓库:
git add .
1.4 提交文件到 Git 仓库:
git commit -m "Initial commit"
-
连接到远程仓库
1.1 创建远程仓库:在 GitHub上创建一个新的仓库。.1.2 添加远程仓库:
git remote add origin https://github.com/yourusername/your-repo.git
1.3 推送代码到远程仓库:
git push -u origin master # 想使用ssh的push功能需要更改远程URL为SSH git remote set-url origin git@github.com:yourusername/your-repo.git
本地管理个人的在线项目
确保你已经在GitHub个人设置中添加了本地电脑的SSH密钥
-
使用SSH克隆仓库
克隆仓库:使用SSH URL,而不是HTTPS URL:
git clone git@github.com:libo-huang/eTag.git
-
更新现有的远程URL为SSH
如果你已经克隆了仓库,则需要切换为SSH:
2.1 查看当前远程URL:
git remote -v
2.2 更改远程URL为SSH:
git remote set-url origin git@github.com:libo-huang/eTag.git
-
验证SSH连接
测试SSH连接
ssh -T git@github.com
如果连接成功,你会看到一条欢迎信息,说明设置正确。确保在推送或拉取代码时使用SSH URL。
-
修改并提交
本地修改项目中的内容并完成
git add .
和git commit -m 'local_update'
, 提交修改到远程项目:git push -u origin main
-
拉取最新更新
同步线上仓库的更新
git pull origin main
删除 Git 项目
-
删除本地 Git 仓库
要删除本地 Git 仓库,只需删除 .git 文件夹。
1.1 确保您在项目的根目录:
cd my_new_project
1.2 删除 .git 文件夹:
rm -rf .git
这将删除 Git 仓库,但不会删除项目中的其他文件。
-
删除远程仓库
要删除远程仓库,您需要在托管服务(如 GitHub)上进行操作。
2.1 登录到您的托管服务账户。
2.2 导航到您要删除的仓库。
2.3 找到删除仓库的选项:
- 在 GitHub 上,进入仓库的设置页面,滚动到页面底部,您会看到删除仓库的选项。
- 在 GitLab 上,进入仓库的设置 -> 常规页面,滚动到页面底部,您会看到删除项目的选项。
- 在 Bitbucket 上,进入仓库的设置页面,找到删除仓库的选项。