1 搭建git使用环境
包括创建本地仓库和远程仓库
1.1 准备工作
1.1.1 注册一个github帐号
**官网地址:**https://github.com/
1.1.2 配置和删除用户名和邮箱[1][2]
安装完Git
之后,要做的第一件事就是设置你的用户名和邮件地址。这一点很重要,因为每一个Git
提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改
如果使用了--global
选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情,Git
都会使用那些信息。当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global
选项的命令来配置。
1.获取当前的用户名和邮箱
git --version # 查看git的版本信息
git config --global user.name # 获取当前登录的用户
git config --global user.email # 获取当前登录用户的邮箱
2.配置当前的用户名和邮箱
如果刚没有获取到用户配置,则只能拉取代码,不能修改 要是使用git,你要告诉git是谁在使用
git config --global user.name 'userName' # 设置git账户,userName为你的git账号,
git config --global user.email 'email'
# 获取Git配置信息,执行以下命令:
git config --list
3.修改和删除用户名和邮箱[3]
bash方式
# 修改user.name
git config --global --replace-all user.name "your user name"
# 修改user.email
git config --global --replace-all user.email"your user email"
直接修改.gitconfig文件
在.gitconfig文件中直接修改或删除已经设置好的内容
sudo gedit ~/.gitconfig
1.1.3 配置https和ssh推送时保存用户名和密码[4]
git config --global credential.helper store
1.1.4生成公钥和私钥
- 生成公钥和私钥
# 将公钥配置到GitHub,ssh提交就可以免输入用户名密码
# 三次回车即可生成 ssh key,id_rsa为私钥,id_rsa.pub为公钥
ssh-keygen -t rsa
# 查看已生成的公钥
cat ~/.ssh/id_rsa.pub
- 删除旧的公钥和私钥
cd ~/.ssh
rm id_rsa*
1.2.创建本地仓库
# 创建文件夹lusxGitRepositories
mkdir lusxGitRepositories
# 切换到lusxGitRepositories目录下
cd lusxGitRepositories
# 在当前目录新建一个Git代码库
git init
# 新建一个目录,将其初始化为Git代码库,c_practice为仓库的名称
git init c_practice
1.3.创建项目的远程仓库[5]
1.3.1在github端设置SSH Key
- 点击 右上角头像->Settings->SSH and GPG keys->New SSH key
- 在弹出的页面里,Title文本框随意填入一个名字,key文本框中填入之前所生成的公钥id_rsa.pub中的内容
- Add SSH Key,即可生成SSH Key
1.3.2创建一个远程仓库[6]
- 点击 右上角头像->Your repositories->右上角的new
- 填一下这个仓库的名称,description,添加一个README.MD文件然后点击 Create repository,一个远程仓库就创建成功了
1.3.3项目文件上传到远程仓库
- 点击右上角,
clone->ssh
,然后复制这个链接 - 将项目文件放在之前创建的本地仓库lusxGitRepositories,并在该目录下新打开一个终端,输入以下命令为该项目添加一个远程仓库,格式为:
#git remote add [repository_name] ssh
git remote add c_practice git@github.com:guanjinglu/c_practice.git
- 将本地仓库中的项目文件上传到远程仓库
# 1.将所有的项目代码文件上传到暂存区
git add .
# 2.查看当前git的状态
git status
# 3.将暂存区的文件进行commit
git commit -m "add some test code 20220108"
# 更新远程仓库的 url
git remote set-url c_practice git@github.com:guanjinglu/c_practice.git
# 4.把本地仓库的变化连接到远程仓库主分支
git pull origin master --allow-unrelated-histories
# 5.使用push指令进行上传,
git push c_practice master
说明
1.查看当前git的状态时,其中On branch master
表示位于master分支上,No commits yet
表示文件还未提交
2.set-url:修改远程仓库(remote)的URL,当想要从SSH切换到HTTPS的远程URL可以使用[7]
3.第一次上传使用git push c_practice master
,c_practice是你的remote名称,接下来再进行上传时使用git push c_practice
4.第一次push的时候,经常会报这样的错误,少了一个known_hosts文件,本来密钥文件应该是三个,现在是两个,便报了这样的错误,此时选择yes回车之后,便可,同时生成了缺少了的known_hosts文件[8]
4.刷新一下github中的页面,在远程仓库中会显示所上传的文件
2 使用git进行代码管理
2.1 从远程仓库下载文件
选择另外一个目录,假装就是另一台设备了…
打开一个终端输入以下命令,将远程仓库中的文件下载到当前目录
[-b branch]为可选内容,意思是下载指定的分支
# git clone [-b branch] https://github.com/guanjinglu/c_practice.git
git clone https://github.com/guanjinglu/c_practice.git
2.2使用git相关命令对文件进行增加删除改动[1]
2.3将此次改动提交到本地仓库
git commit -m "description"
2.4将此次改动push到远程仓库
# git push [远程仓库名称] [分支名称]
git push c_practice master
2.5在另一台设备上更新改动
git pull c_practice master
参考链接
[1]https://thinkwon.blog.csdn.net/article/details/101450420
[2]https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%88%9D%E6%AC%A1%E8%BF%90%E8%A1%8C-Git-%E5%89%8D%E7%9A%84%E9%85%8D%E7%BD%AE
[3]https://lewky.blog.csdn.net/article/details/78708589?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&utm_relevant_index=1
[4]https://blog.csdn.net/u012163684/article/details/52433645
[5]https://blog.csdn.net/ajianyingxiaoqinghan/article/details/70544159
[6]https://www.cnblogs.com/keZhenxu94/p/5288488.html
[7]https://www.cnblogs.com/yandufeng/p/6423821.html
[8]https://blog.csdn.net/Wbiokr/article/details/73431199