Git

Git的配置

下载地址:https://git-scm.com/, 详细安装教程参考:https://www.cnblogs.com/xueweisuoyong/p/11914045.html
安装完成后,打开Git Bash,输入

$ git config --global user.name "你的名字"
$ git config --global user.email "你的eamil"

一些名词和命令说明:
origin是什么
git add . ->将修改添加至本地缓存
git commit -m 'msg' ->将本地缓存或修改保存到本地仓库中
git push(推送) ->将本地仓库的代码推送至服务器
git pull(拉取) ->将服务器的代码更新同步到本地仓库中、

git pull 是git fetch + git merge FETCH_HEAD 的缩写,相当于:先fetch,再merge,如果加--rebase参数,就是使用git rebase 代替git merge
在IDEA的Git命令中的Update Project,代表可以选择到底是merge 还是 rebase 的git pull

  • merge:就是git的合并代码。远程代码在你push之前已经被修改了。就需要先merge。如果没有冲突,就自动合并修改,否则需要逐一合并;
  • rebase:拉下来的代码有冲突,但是不会自动合并。需要你手动合并

Git的命令操作

1、修改远程仓库URL
在工作目录打开Git bash
输入git remote -v列出当前本地仓库链接的远程仓库url

$ git remote -v
origin  git@github.com:zhangxinyucx/javaconfig.git (fetch)
origin  git@github.com:zhangxinyucx/javaconfig.git (push)

通过git remote set-url [remote-name] [remote-url]命令更新远程url

$ git remote set-url origin git@github.com:zhangxinyucx/javaconfig.git

如果要添加新的远程仓库,使用git remote add <name> <url>命令,
如果要删除关联的远程仓库,使用git remote remove <name>命令

IDEA中使用Git

1、配置
在Settings中搜索git,打开Path to Git executable,选中安装Git的目录中的bin下的git.exe,Test测试是否设置成功。
在Github中添加注册的账号,Host:github.com,如果账号密码登录失败,可以使用Token,Token的获取方法:登录Github,打开Settings中的Developer Settings,点击Personal access tokens开始创建新的Token
2、创建本地仓库
VCS-->Import into Version Control-->Create Git Repository...,直接选中项目目录,此时项目文件全部变为红色
3、上传项目到本地仓库:
项目右键,Git-->Add,项目文件变成绿色,此时项目被添加到暂存区(stage)中;右键项目或者VCS --> Git --> Commit Directory,输入Commit Message,点击Commit (注:也可以选择Commit and push,相当于提交到本地仓库后push到远程仓库,首次需要配置Git Remotes(远程仓库地址,在Github上新建Repository,然后在clone中可以找到https或者ssh地址))

版本控制时文件颜色代表的意思:
绿色:已经加入版本控制暂未提交,add但未commit;
红色:未加入版本控制,没有add;
蓝色:加入版本控制,已提交,有改动;
白色:加入版本控制,已提交,无改动;
灰色:版本控制已忽略文件。
详细见setting->Version Control->File Status Colors

4、上传项目到远程仓库,和本地项目同步
VCS -- Git -- Push提交到远程仓库,在后续提交时,每次修改文件,先Add一次,再Push。有时候在push的时候会失败,原因之一是本地代码与远程代码不同步,所以在push之前,要在本地将远程代码pull一下

ps:最好在自己远程仓库建立分支branch,如一个项目至少应该有两个分支,一个为master(默认),正式可投入生产环境使用的版本,不随意更改;一个为开发dev,供开发测试,

5、获取Github上的项目
先点击右上角Fork:即建立一个新分支,复制一个副本到自己的Git仓库里,然后再Clone到本地机器上。若不Fork,直接Clone,则是克隆到自己的本地机器上,连接的远程仓库还是别人的,自己不是原作者,无法进行开发修改。只有Fork时,就把别人的项目克隆到自己的Git远程仓库上,然后再Clone到本地,此时本地连接的是自己的远程仓库
然后点击Clone获取地址。
VCS -> Get from Version Control -> 再Repositroy URL中选择git,输入复制的地址,Directory是clone下的项目所在的目录,如果登录自己的账号,fork后可以直接clone

Github上的一些名词说明
Clone:拷贝一份项目
Fork:创建新分支,复制源项目到自己的Github上,若后续源项目更新,自己fork的项目不会跟着更新。需通过其他反式同步。
一般浏览者发现对有些项目有兴趣,项目中存在bug或可再优化,想帮原作者完善项目。则会使用fork项目,对此项目修改完善后。发起merge(合并)请求。等待原作者响应即可。
Star:关注他人的更新,类似于点赞,表示喜欢此项目,支持项目,点击Github个人头像,可看到下拉菜单your stars选项,点击此项,即可查看star的所有项目
Watch:通知提醒,默认 no wacthing,对于自己特别有兴趣,且不定期更新的项目可选择wacthing,表示以后会关注此项目更新状态,一旦有任何改动,则会在个人通知中心,邮箱不断收到通知邮件。所以请考虑后再选择,若随意选择wacthing项目,项目一多,对于不断收到的通知会超烦的。

Git使用遇到的问题

1、执行 git clone git@github.com:zhangxinyucx/learngit.git命令,提示:

The authenticity of host 'github.com (20.205.243.166)' can't be established.
ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

原因是:新生成的密钥,在ssh目录下少了一个known_hosts文件,本来密钥文件应该是三个,现在是两个,便报了这样的错误,此时选择yes回车之后,便可,同时生成了缺少了的known_hosts文件
2、git add项目提示 LF will be replaced by CRLF
原因和解决方案:https://blog.csdn.net/huihuikuaipao_/article/details/100183521

posted @ 2022-02-21 14:53  1131012  阅读(528)  评论(0)    收藏  举报