下列内容适用于git初学者,从创建本地git仓库到提交的一个基本过程1.
1.创建git仓库
在想创建git仓库的路径下打开git bash,输入以下命令行创建仓库(一般来说,我觉得直接在code workspace得地方创建git仓库就可以了,这样commit代码得时候也不用先付知道git仓库所在得文件夹下)
git init
将会生成一个.git文件夹(如果没有发现,说明这个文件夹被隐藏了,但还是存在的)
2.提交要保存的文件
可以先把要提交的文件放到.git仓库所在的文件夹下,然后运行下面的命令:
git add 要上传的文件
这样是上传到缓存区,相当于只是先把文件放上去,等到最后提交到仓库中
3. 提交到仓库中,加上备注
git commit -m "file is updated" (这里的-m 是message的意思)
都提交上去之后,显示working tree clean,也就是没有什么待提交的了
4.查看提交记录
git log简洁显示_git log简单显示-CSDN博客
5.回退到某一版本
git reset --hard <commit hash>
6.把某个版本的从git仓库中拉下来,这里注意:如果拉下来的文件路径所在的文件夹中有一个文件和被拉下来的文件重名,比如从git中拉下来的文件为“file.txt”,然后path/to/file这个路径下也有个“file.txt”,那么就会被拉下来的文件直接覆盖。所以建议path/to/file是一个专门保留从git上拉下来的内容的路径。
7. git status
git的目的就是:及时的检测更改,就是为了让你能够把不同版本的代码及时的保存提交,所以git status也只会对可能会影响此结果的事情进行提示,比如可能要提交的文件的修改才会在git status中显示,或者虽然是被提交的文件,但是如果没有修改后再次add,也不会再git status中显示。
8.通常的使用流程
(1)git add 提交代码
(3)git commit提交到本地仓库
(4)版本回退:git status 看下有没有未提交的修改,确保提交了未提交的修改后再git reset --hard <commit ID> (或者如果未提交的修改是无用的,直接reset也无妨)
这里注意,在git reset之前一定要用git status检查下距离上次提交后做了哪些更改,但还没有add 和 commit的内容,可以用git diff <file_path>来看做了哪些修改, 否则reset之后会被直接覆盖掉,无法保存!!!!也就是说,每次reset前都要检查下是否有为保存的更改。
或者是做好备份再进行reset!!!!!
9. 本地版本管理,怎么把git commit的文件再下载到本地:
在git仓库所在目录下,运行:
git archive -o exported.zip <commit_hash> > /dev/null
exported.zip 导出的压缩文件的名称,这个命令是可以设置导出的文件类型和其它一些具体细节的,具体用的时候再查吧。
这样,在git仓库路径下就生成了一个exported.zip的压缩文件,存储了commit时的版本。
但是好像如果不在.git目录下之执行此命令,也能生成exported.zip,但里面没有内容
注意!!!
git archive -o exported.zip <commit_hash> > /dev/null
这个要是不行,用下面的命令,直接用下面的命令
git archive -o exported.zip <commit_hash>