Git使用
1.基础知识
pwd 显示目前的工作目录 print work directory

ls 显示当前路径下所有文件
mkdir 产生新的文件夹make directory
touch 创建新文件

rm 移除文件 remove file
mv 移动文件
git init 初始化空的git存储库
ls -a可以看到隐藏的文件
git status 查询当前存储库状态,如果有未被提交或更新的新文件,会提示文件


之后使用
1.git add
git add + 文件名 添加文件至 staging area区域,此时文件会有两份,一份在工作目录,一份在暂存目录,看不见

之后通过commit提交到repository存储库

要注意工作目录中的文件不是staging area(暂存目录)区域的文件,如果你在add文件到暂存目录后修改了工作目录中的文件,之后没有重新add文件,那么此时直接commit的话,推送的文件是暂存目录中没修改过的文件而不是你在工作目录又修改了的文件。就像这样:

此时运行git add 命令的话,可以更新暂存目录中的文件,
此时运行git restore命令的话,可以将工作目录中的文件恢复成暂存目录中的文件状态
git restore –staged 将文件从暂存区撤销


2. git commit
commit提交文件后,可以写提交注释,#开头的内容会被忽略,写完本次注释后按ESC结束输入,在底端输入wq(write & quit)后回车保存退出.

main表示当前的分支,root-commit表示目前还没有任何commit
git log查看当前git的log信息

git commit –ament file 合并纪录,会把从上次暂存仓库里更新到存储库的分支归并为一条
3.git ignore
有些不需要提交的文件或文件夹,比如可以自己生成的二进制文件夹,缓存文件夹什么的,可以在同级目录下新建一个名为.gitigonre文件,无文件格式。在文件中写入要忽略的文件夹和文件名,多文件时回车写下一个,#开头行代表注释。

4.一步完成add和commit
git add .
add所有修改或更新的文件到暂存目录

git commit -m “text”
带注释的更新,可以跳过后面的注释阶段,同时commit全部文件或更新
git add .
stage所有的改变
git add -u
除了新添加的文件stage所有的改变
git commit -a
除了新文件stage并commit所有的改变
5.revert & reset
git revert + 版本SHA-1 还原并存储为一个新的提交
revert and store as a new commit,相当于撤销了之前的操作

HEAD表示当前版本的意思
git reset HEAD~ 回退到上一个版本,用于取消已缓存的内容。
Discard the last commit
git reset HEAD~n回退到前n个版本
discard the last n commits
6.git restore
git restore 文件名 : 撤消工作区的修改返回到最近一次add(缓存区)的版本或者最近一次commit(当前版本库)的版本

7.远端提交

2.UE5中使用
1.团队协作
每次工作前,先拉取pull远端的修改,拉取后确保成功了再工作。见标题3
第一次工作完成后,推送push本地的内容到远端,确保成功后就可以关闭。
日常推送见标题5
不要使用下面标题2的推送,用标题5的
2.第一次推送 push
先在GitHub中创建存储库,之后进入UE项目中


GitPath写自己安装git的路径,URL写当前要连接的仓库的地址。

Git路径写自己安装git的bin文件夹下git.exe的路径
URL写要使用的Github仓库的地址,后面LFS的.gitattributes可以先不选,自己创建一个,内容如下
1 | # Unreal Engine file types. |
第一次推送到远端存储库,遇到以下图片问题的,输入两张图片之后的命令行


1 | git config --global http.sslVerify "false" |
1 | 然后可以推送到远端 |

3.拉取 pull
1 | git pull origin master |
4.VS中修改后推送
C++工程中,如果是创建了新文件,那么长这样

然后写提交信息后直接按全部提交按钮就行,不过这是提交的本地。远端存储的话,去管理界面把按push就行

https://www.cnblogs.com/delav/p/11118555.html

5.日常使用Git-bash推送
不论是蓝图还是C++工程 都可以用下面方法推送。
工程文件夹里右键 选择git-bash
1 | 1. git add . //修改添加到暂存区 |
只有1 2 6是每次推送都要执行的,3 4 5 第一次推送的时候执行一次就可以了。