git config --global core.autocrlf input
我们一般希望远程仓库中的代码为LF,就用: git config --global core.autocrlf input 就ok了。
git config --global core.autocrlf input
这是一个Git的配置命令,它的作用是告诉Git在检出代码时不要自动将行尾转换为CRLF(Windows风格的换行符),而是保留原来的LF(Unix风格的换行符)。
core.autocrlf input的意思是告诉Git在检出代码时不要自动将行尾转换为CRLF,而是保留原来的LF。这通常用于跨平台协作开发,以避免因行尾转换导致的代码变化和冲突。
core.autocrlf三种配置项(true、input、false)
core.autocrlf 是一个Git的配置项,它有三个可选值:
- true:在检出代码时自动将行尾转换为CRLF,在提交代码时自动将行尾转换为LF。
git config --global core.autocrlf true
- input:在检出代码时不自动转换行尾,在提交代码时自动将行尾转换为LF。
git config --global core.autocrlf input
- false:在检出和提交代码时都不自动转换行尾。
git config --global core.autocrlf false
补充:git的检出(Checkout)和提交(Commit)
检出(Checkout)和提交(Commit)是Git中两个非常重要的概念。
检出是指将代码从Git仓库中取出并放到本地工作目录中,以便进行修改和开发。在Git中,我们可以使用 git checkout 命令来进行检出操作,例如:
git checkout master
上述命令表示将当前分支切换到master分支,并将master分支的代码检出到本地工作目录中。
提交是指将本地工作目录中的代码变更保存到Git仓库中,以便其他人可以查看和使用。在Git中,我们可以使用 git commit 命令来进行提交操作,例如:
git commit -m "Add new feature"
上述命令表示将本地工作目录中的代码变更提交到当前分支,并添加一条提交信息为“Add new feature”的记录。
需要注意的是,提交操作只是将代码变更保存到本地仓库中,并不会同步到远程仓库中。如果需要将本地仓库中的代码同步到远程仓库中,还需要使用 git push 命令进行推送操作。
git pull已包含检出(checkout操作)
pull 命令包含了两个操作:fetch 和 merge。
fetch 操作是将远程仓库的代码更新到本地仓库中,但是并不会将代码合并到当前分支中,也就是说并不会进行检出操作。
merge 操作是将本地仓库中的代码合并到当前分支中,也就是进行检出操作。
因此,pull 命令包含了 merge 操作,也就是包含了检出操作。执行 pull 命令会将远程仓库的代码更新到本地仓库中,并将更新后的代码合并到当前分支中,从而实现了检出操作。