自学材料:
Pro git(Yihui Xie, J. J. Allaire, Garrett Grolemund)
建议使用高校邮箱如xxxx@nwsuaf.edu.cn,高校邮箱有福利(可以建立私有仓库啊,完成你的秘密项目)。
记得取一个简单好记的用户名;记得改一个有个性的头像。(后面协作开发项目的时候,可以更方便沟通和交流!)。
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
此步骤非必须,根据个人爱好而定。
配置默认文本编辑器(text editor)。windows党还是自觉使用Notepad吧,免费又熟悉
下载并在本地电脑安装Notepad++——强烈建议默认安装路径
在Git Bash窗口,并输入如下代码(这是告诉git,我将使用如下的默认文本编辑器):
$ git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
此步骤非必须,看你是不是git重度用户。
配置合并检查工具(mergetool)。这个必须要图形化GUI的,p4merge就是一个不错的选择。
windowns系统下默认安装路径一般为
"C:Program Files\Perforce\p4merge.exe"
。
$ git config --global diff.tool p4merge
$ git config --global difftool.p4merge.path 'C:\Program Files\Perforce\p4merge.exe'
$ git config --global merge.tool p4merge
$ git config --global mergetool.p4merge.path 'C:\Program Files\Perforce\p4merge.exe'
如果上述步骤都做好了,你可以系统地检查一下是不是git配置都正确(如你所愿)啦!
$ git config --list
d
盘新建一个名为project
的文件夹,那么工作文件路径就是d:/project/
。工作文件夹最好不要设在系统盘,如c盘。——系统重装可能就麻烦了!
文件夹命名不要出现中文。——编程世界中还是乖乖用英语吧!
git cd /d/project
如果你想学习并改进一个已经github在线的公开项目,你可以把它克隆下来:
在github网站上找到自己喜欢的在线仓库,例如:https://github.com/huhuaping/team-students
在Git Bash窗口,并输入如下代码(这是告诉git,请拷贝这个在线仓库吧):
git clone https://github.com/huhuaping/team-students
如果你想对一个公开项目(例如,https://github.com/huhuaping/team-students )做出自己的贡献,你可以把它fork到你的github账户下。
进入github官方网站,用你的账号密码登陆进去。
在浏览器上新建标签页,找到你感兴趣的公开项目(例如,https://github.com/huhuaping/team-students )。
你也可以直接搜索你感兴趣的任意公开项目
对于这个你感兴趣的公开项目,点击网页上大大的Fork按钮。
这时,你可以在你自己账户下的仓库列表中,看到刚才Fork的你感兴趣的项目。
在Git Bash窗口,并输入如下代码(这是告诉git,请进入工作文件夹吧):
git clone https://github.com/your-account-name/team-students
注意:这里的
your-account-name
是你github账户的用户名——因为你把别人的公开项目(派生)Fork到自己的账户下啦!
cd /d/projects/team-students
git-intro
的分支(branch),并检出(checkout)到这个分支。——这一步的意义以后再说吧。在Git Bash窗口,并输入如下代码(这是告诉git,请进入工作文件夹吧):git checkout -b git-intro
打开R项目文件
team-students.Rproj
,运行Rstudio 修改其中Rmarkdown文件02-git-team-intro.Rmd
的内容,例如增加一行代码。 保存(save)好修改。
git add 02-git-team-intro.Rmd
add a new line
):git commit -m 'add a new line'
git git push origin git-intro
pwd
$ git log --oneline --decorate --graph --all
如何退出当前列表?在Git Bash窗口,输入并运行代码q
,可以直接退出当前的列表ls。
如何退出Git Bash窗口?在Git Bash窗口,输入并运行代码exit
,可以直接退出git Bash窗口