git上传代码命令集合

本文详细介绍了如何在GitLab中通过SSH密钥方式上传代码,包括生成SSH公私钥、配置Git全局信息、启动ssh-agent进程、测试SSH连接及代码上传的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

gitlab上传代码使用ssh方式上传必须要先生成ssh公私密钥,以下的参数说明如下:
account为登陆用户名
account@qq.com为注册时留的邮箱。
ip:为gitlab服务器上的ip
publicDir:创建项目时的项目工程名
~/.ssh:为操作系统当前用户目录下的.ssh文件夹,如C:\Users\admin,.ssh如果没有则需要增加,使用cmd命令:
cd C:\Users\admin
mkdir .ssh
来增加文件夹
192.168.10.247:为gitlab服务器地址

1、生成密钥
–Git 全局配置
git config --global user.name “account”
git config --global user.email "account@qq.com"

–根据邮箱名生成密钥
ssh-keygen -t rsa -C "account@qq.com"

–启动ssh-agent进程
eval ssh-agent -s

–将当前用户目录下的.ssh文件夹下的证书加入
ssh-add ~/.ssh/id_rsa

–测试连接
ssh -T git@192.168.10.247

–用记事本打开当前用户目录下的.ssh文件夹下的id_rsa.pub,复制文本,到gitlab控制台的右上角-setting,点击后到左侧菜单栏,点击ssh keys,将复制的文本拷贝进去

2、上传代码
有三种方式,在这里由于我全部代码的文件夹在本地直接初始化上传,所以使用第二种,在要上传的文件夹里,右键选择git bash(已经安装了git客户端)然后根据第二步进行操作
1、–Create a new repository
git clone git@192.168.10.247:publicDir/person.git
cd te
touch README.md
git add README.md
git commit -m “add README”
git push -u origin master

2、–Existing folder git remote add origin git
cd existing_folder
git init
git remote add origin git@192.168.10.247:publicDir/person.git
git add .
git commit -m “Initial commit”
git push -u origin master

3、–Existing Git repository
cd existing_repo
git remote rename origin old-origin
git remote add origin git@192.168.10.247:publicDir/person.git
git push -u origin --all
git push -u origin --tags

### 如何将Git代码推送到Gitee的指定文件夹 要实现将代码推送至Gitee上的特定文件夹,需要注意的是,在Git中无法直接向远程仓库的一个子目录推送整个项目。这是因为`git push`操作会将本地分支的内容推送到远程仓库根目录下的对应分支上,而不是某个具体的文件夹。 然而,可以通过以下方法间接完成这一需求: #### 方法一:调整工作区结构并提交更改 如果目标是在远程仓库中的某一个文件夹内更新内容,则可以在本地创建相应的文件夹结构后再执行提交和推送命令。具体过程如下所示[^2]: 1. 初始化一个新的Git库或者克隆已有的远程仓库到本地。 ```bash git clone https://gitee.com/username/repository_name.git ``` 2. 进入该项目路径,并导航至希望放置新代码的目标文件夹(假设名为target_folder)。 ```bash cd repository_name/target_folder/ ``` 3. 将需要上传的新文件复制到这里或将它们添加进来。 4. 使用标准流程来跟踪这些新增加的文件: ```bash git add . git commit -m "Add new files into target folder" ``` 5. 推送修改后的状态回服务器端: ```bash git push origin main ``` 这样做的效果就是让新的改动只影响到了那个特别指明出来的子目录里头去了。 #### 方法二:利用全局忽略规则简化管理多个项目的配置 当面对众多相似类型的排除项时——比如不同版本控制系统产生的临时备份副本之类的通用模式匹配字符串列表——可以考虑设置一次性的跨所有repo生效的`.gitignore`模板定义[^1]。这一步骤虽然不直接影响当前讨论的主题即“如何把东西放进远端存储位置里的某些特殊部分”,但它确实有助于保持整洁有序的工作环境从而减少人为失误的可能性。 最后提醒一点关于初始化阶段形成的隐藏元数据容器的样子[^3]: 这是刚运行过`git init`之后自动生成出来用于记录历史变更信息的数据集合体外观示意图形表示法而已并不涉及实际业务逻辑层面的东西所以不必太过纠结于此细节除非真的有必要深入了解底层原理机制才行。 ```python # Example Python snippet demonstrating interaction with Git via subprocess module. import subprocess def run_git_command(command): result = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, shell=True) if result.returncode != 0: raise Exception(f"Error executing command {command}: {result.stderr}") return result.stdout print(run_git_command('git status')) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值