Linux下使用git克隆github项目及文件上传

1.准备

2.本地新建项目上传GitHub

3.克隆自己GitHub项目添加或上传文件

4.克隆别人GitHub项目修改上传自己仓库

5.常用git命令

6.vscode文件git颜色

1.1 git安装

sudo apt-get install git

1.2 配置用户信息

用户名,邮箱为GitHub上的注册信息

git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

配置好后用下面命令查看

git config --list

1.3 添加SSH key,在GitHub网站上添加了SSH key(建议使用SSH)

生成密钥,若添加密码则后续上传和克隆项目都需输入密码

ssh-keygen -t rsa -C "你的邮箱"

查看并复制

cd ~/.ssh
ls
cat id_rsa.pub

把复制的内容提交至GitHub-setting-SSH and GPGkeys-Key中

2.本地新建项目上传GitHub(推荐直接clone远程仓库进行项目管理

2.1 GitHub上新建一个仓库

2.2 本地新建项目文件夹

(1)初始化本地仓库

运行git init就可以将一个目录转变成一个Git仓库,这样你就可以开始对它进行版本管理了

git init

(2)编辑本地项目文件或直接拖动文件到文件夹

vim main.cpp

(3)提交新文件到本地暂存

git add main.cpp

(4)commit需要提交的信息

git commit -m "对应的提交信息"

 (5)链接远程仓库信息(默认链接的分支为master)

git remote add origin 远程url地址

(6)新建并切换为上传分支

git checkout -B main

(7)上传远程仓库origin和分支main(GitHub默认分支已从master变更为main,需输入SSH密码)

git push -u origin main

以后都不用加-u了,(-u是将本地和远程的master关联起来)

2.3 可能出现问题

(1)Git push命令报hint:Updates were rejected because the remote contains work that you do(添加第5步)

1.git init                           //初始化仓库
2.git add .(文件name)                //添加文件到本地 
3.git commit -m “first commit”      //添加文件描述信息
4.git remote add origin  远程url //链接远程仓库 
5.git pull origin main --allow-unrelated-histories    // 把本地仓库的变化连接到远程仓库main分支
(同步本地和远程:两个分支是两个不同的版本,具有不同的提交历史)
6.git checkout -B main              //切换上传分支
7.git push -u origin main        //把本地仓库的文件推送到远程仓库main分支

(2)Everything up-to-date.

git branch dev //创建一个dev分支  dev是分支的名字 可以随便命名
git add .      //再把文件添加到暂存区
git commit -m '备注'  //提交到版本库,也就是当前分支
git push origin dev  //提交到远程仓库
git checkout main  //然后切换到main分支
git merge dev   //把dev分支合并到main上
git push -u origin main //最后提交到远程仓库

3.克隆自己GitHub项目(建议选择SSH)

git clone实际上是一个封装了其他几个命令的命令。它创建了一个新目录,切换到新的目录,然后git init来初始化一个空的Git仓库,然后为你指定的URL添加一个(默认名称为origin的)远程仓库(git remote add),再针对远程仓库执行git fetch,最后通过git checkout将远程仓库的最新提交检出到本地的工作目录。

git clone 远程仓库url

 Linux下使用git克隆github项目及文件上传_第1张图片

如果克隆时选择HTTPS连接(需删除与远程仓库连接关系,并重新为项目添加SSH连接)

 git remote rm origin
git remote add origin 远程url地址

github文件删除

在Github仓库中是无法通过鼠标操作直接删除文件和文件夹的,那只能通过 git 命令来执行删除操作

git clone 远程仓库url 
cd 项目文件夹

删除文件或文件夹

git rm -r --cached file_name/  // 将file_name改为自己要删除的文件名或文件夹/
                             // 删除后push,远程仓库才会删除,本地文件无影响
                             // 注意: 如果删除的是文件夹,需要“-r”, 如果是文件,则不需要"-r"
git commit -m '备注'      //删除完你需要删除的文件或文件夹以后,在终端里提交本次修改
git push

添加文件或文件夹(不要和删除同时进行

文件
git add file_name

文件夹
cd folder_name
git add .

git commit -m '备注'
git push

4.克隆别人GitHub项目修改上传自己仓库(建议选择SSH)

自己新建仓库不要添加README.md,不然克隆的项目中有同名文件时会报错

git clone 远程url  // 下载到本地文件夹
rm -rf .git       // 删除原项目.git文件
git init          // 仓库初始化
git add .         // 加入暂存区
git commit -m "备注"  //提交备注
git remote add origin 远程仓库地址  //自己创建的仓库地址
git push --set-upstream origin master  //推送到master分支

GitHub默认分支更改为main,下面为上传main分支

git clone 远程url  // 下载到本地文件夹
rm -rf .git       // 删除原项目.git文件
git init          // 仓库初始化
git add .         // 加入暂存区
git commit -m "备注"  //提交备注
git remote add origin 远程仓库地址  //自己创建的仓库地址(创建时不要添加README.md)
git checkout -b main  //新建并切换为main分支(为什么要新建main分支,远程仓库不是默认存在main分支吗?)
                      //克隆项目后初始化后得到的.git默认只有master分支,为了上传到远程main分支,需要在本项目中新建main分支,上传时要确保新建仓库没有同名文件(即新建仓库选加的README.md)
git push --set-upstream origin main  //推送

分支操作

(1)新建分支 git branch dev 建立名为 dev 的分支
(2)git checkout dev 切回 dev 分支
(3)git branch -d dev 删除分支(需要切回master主分支)
(4)git checkout -b dev 使用checkout建立分支,并切回dev分支上

删除远程仓库所有文件(慎重,删除后本地文件也不存在了

git rm -rf --cached .  //cached为保留本地,去掉则本地远程一同删除
git commit -m '备注'
git push

5.常用git命令

https://blog.csdn.net/low5252/article/details/106365210

6.vscode文件git颜色

代码里的左侧颜色标识:
红色,未加入版本控制; 远程clone到本地
绿色,已经加入版本控制暂未提交; (新增部分)
蓝色,加入版本控制,已提交,有改动; (修改部分)
白色,加入版本控制,已提交,无改动;
灰色:版本控制已忽略文件。

你可能感兴趣的:(linux,git,github)