1.代码管理工具 Git
2.git的安装
3.开源协议专题(七):BSD、MIT、ApacheL
4.pythonçå ç§å¼åå·¥å
·ä»ç»
5.OpenBSD 7.3 发布,包含新功能和更新 | Linux 中国
6.MIT许可证运用情形
代码管理工具 Git
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或大或小的项目。Git 是openssh 源码 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。版本控制包括:存储版本、比较版本、合并版本、回滚版本等。
主要有CVS(Concurrent Versions System)、SVN(Subversion)、GIT三种版本控制软件。Git 和 SVN 的区别在于,Git是分布式版本控制系统,而SVN是集中式版本控制系统,Git具有更高的灵活性和效率。
集中式版本控制和分布式版本控制的区别在于,集中式版本控制系统只有一个中心服务器,所有操作都在此服务器上进行,而分布式版本控制系统每个用户都有自己的本地仓库,可以独立进行操作,无需依赖中心服务器。
在 Linux 平台上安装 Git,需要先安装依赖工具如curl、zlib、openssl、expat、libiconv等。在 Centos 下编译安装可能会报错,解决方案是...。在 Windows 平台上,根据系统是位还是位下载Git windows的安装包。在 Mac 平台上,使用图形化的php mysql dw 源码 Git 安装工具。
安装完 Git 后,需要配置 Git 的工作环境。配置工作只需要一次,以后升级时还是沿用现在的配置。配置包括设置 Git 外观和行为的配置变量,如用户名、电子邮件地址、默认编辑器、差异分析工具等。
Git 自带一个git config的工具来帮助设置 Git外观和行为的配置变量。这些变量存储在三个不同的位置:在 Windows 系统上,Git 会找寻用户主目录下的.gitconfig 文件。在 Mac 和 Linux 系统上,这些配置变量存储在 .gitconfig 文件中。
配置用户信息是第一个要配置的,包括你个人的用户名和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明时谁提交了更新,所以会随更新内容一起被永久纳入历史记录。如果用了--global选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。如果要在某个特定的项目中使用其他名字或者邮件地址,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。
配置文本编辑器默认会使用操作系统指定的默认编辑器,一般时 VI 或者 Vim,如果有其他偏好,比如 Emacs,可以重新设置。配置差异分析工具需要指定可以理解的工具,如kdiff3、tkdiff、meld、xxdiff、emerge、视频点击付费源码vimdiff、gvimdiff、ecmerge、opendiff等。
查看配置信息可以使用命令git config --list 来查看已有的配置信息,也可以单独查看某项配置信息。
Git 四个工作区域是工作区、暂存区、本地仓库、远程仓库。
Git 工作流程一般是先将文件添加到暂存区,再通过 git commit 提交到本地仓库,最后通过 git push 将提交推送到远程仓库。
文件的四种状态分别是已提交、已暂存、已修改和已删除。
查看文件状态可以使用命令git status。
Git 常用命令有获取仓库、git add、git commit、git rm、git log、git diff、git reset、git mv、git branch、git remote、git fetch、git pull、git push、git clone等。
创建新分支这一操作几乎能在瞬间完成,并且在不同分支之间的切换操作也是一样便捷。Git 分支操作相关命令包括git branch、git checkout、git merge、git rebase等。透明路由 源码
远程仓库是指托管在因特网或其他网络中的你的项目的版本库。Git 并不像 SVN 那样有个中心服务器,远程仓库可以是读取或读写权限。
查看远程仓库可以使用git remote -v,添加远程仓库可以使用git remote add,远程仓库数据同步可以使用git push、git pull、git fetch。
Git教程-菜鸟教程、Git使用手册-W3Cschool、版本控制、git-scm.com/book/zh/v2、一小时学会Git等资源可以提供更详细的Git学习和使用指南。
git的安装
在CentOS系统上,安装Git有两种常见方法:yum自动安装和源码编译安装。尽管yum安装方便快捷,但版本控制有限,因此,本文将重点介绍源码编译安装Git(以2..0版本为例)的详细步骤。
首先,通过wget下载Git源码包:wget kernel.org/pub/software...
接着,解压下载的文件:tar -xzvf git-2..0.tar.gz
为了顺利编译,确保安装必要的依赖,运行以下命令安装gcc、openssl等:yum -y install gcc openssl openssl-devel curl curl-devel unzip perl perl-devel expat expat-devel zlib zlib-devel asciidoc xmlto gettext-devel openssh-clients libiconv autotools 有时可能需要移除yum已安装的Git,使用 yum remove git 。
接下来,进入解压后的Git目录,执行编译安装:cd git-2..0 && make prefix=/usr/local/git install
安装完成后,添加环境变量至系统配置文件中:vim /etc/profile,并在文件末尾添加 export PATH=$PATH:/usr/local/git/bin,然后执行source /etc/profile使更改生效,无需重启系统。
最后,检查安装是否成功,只需运行 git --version,如果显示出Git的源码搭建微商城版本号,说明安装已完成。
开源协议专题(七):BSD、MIT、ApacheL
上篇文章介绍了 GPL、MPL、LGPL ,本文继续介绍剩下的三个许可证 BSD、MIT、Apache License。
四、BSD 许可证:
1、概念:
BSD 许可协议,即 Berkeley Software Distribution license 的简称,是由加州大学伯克利分校发布并维护的开源软件许可证。BSD许可证是自由软件中使用最广泛的许可协议之一。
2、两个概念:
BSD:人们常说的BSD,指的是 Berkeley Software Distribution,即伯克利软件套件,是加州大学伯克利分校在AT&T贝尔实验室的Unix操作系统基础上,开发打包的操作系统及相关软件套件。
BSD许可协议:BSD套件遵循某种开源许可证的方式发布,这种许许可证因此而得名,被叫做 BSD许可证。
3、BSD协议特点:
BSD开源协议是一个给予使用者很大自由的协议,可以自由的使用、修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。
4、版本演进历史:
BSD协议的初稿内含有一项额外的条款,要求所有从以BSD许可证授权的软件派生著作,都必须要包含一段文字以交代源代码的来源。该条文列于原BSD许可证的第三条。
GNU项目将这个称为“令人感到不舒服的BSD交代条款”,GNU工程认为存在两个问题:
应自由软件基金会和GNU计划的发起者斯托曼的请求,年7月日,伯克利技术许可办公室的主管 William Hoskins 删除了BSD许可证的第三条。从此以后,自由软件作者就可以方便地采用BSD许可证下的软件,从而跟GPL下的作品融合。
原来的许可证有时被称为“BSD-old”(老BSD)或“4-clause BSD”(四句版BSD),当前的BSD许可证有的被称为“BSD-new”(新BSD)、“revised BSD”(修订的BSD)或“3-clause BSD”(三句版BSD)。
5、协议分析:
当发布使用了BSD协议的代码或以BSD协议代码为基础做二次开发自己的产品时,需满足以下三个条件:
BSD协议鼓励项目代码共享,但需要尊重作者的著作权。BSD协议由于允许使用者修改和重新发布代码,也允许在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。
很多公司在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。遵守BSD 协议的软件,允许用作商业用途,甚至可按照专属许可证进行再发布。
五、MIT 协议:
1、概念:
MIT 许可协议:即 The MIT License,该许可协议之名源自麻省理工学院(Massachusetts Institute of Technology, MIT),又称“X许可协议”(X License)或“X许可协议”(X License)。
2、版本演进历史:
,由自麻省理工学院(MIT)发布。
3、协议特点:
MIT许可协议是许多软件许可条款中被广泛使用的其中一种。与其他常见的软件许可协议(如GPL、LGPL、BSD)相比,MIT是相对宽松的软件许可协议,赋予软件被许可人更大的权利与更少的限制。
4、协议分析:
5、其他重要特性:
有许多团体均采用MIT许可证,例如著名的SSH连线软件PuTTY与X窗口系统、Expat、Mono开发平台库、Ruby on Rails、Lua等等也都采用MIT许可协议。
六、Apache 许可协议:
1、概念:
Apache许可证,即 Apache License,是一个由Apache软件基金会(ASF)发布的自由软件许可证。
Apache许可证最初为 Apache Web 服务器而撰写,Apache许可证在Apache社区内外被广泛使用;Apache基金会下属所有项目都使用Apache许可证;许多非Apache基金会项目也使用了Apache许可证。
官网: apache.org/licenses/
2、版本演进历史:
Apache License 1.0,年发布。
apache.org/licenses/LIC...
Apache License 1.1,年发布。 apache.org/licenses/LIC...
Apache License 2.0,年发布。 apache.org/licenses/LIC...
3、协议要求:
Apache许可证,具体要求如下:
对所有未修改的部分应用相同的许可证,并且在每个许可文件中,必须保留再分发代码中的任何原始著作权、专利、商标和归属通知(不需要包括任何部分的派生作品);
在每个更改的许可文件中,都必须添加一条通知,说明对该文件进行了更改。
不强制要求派生和修改产物使用相同的许可证进行发布。
4、协议分析说明:
如果声明文本文件是作为原始作品发布的一部分,则派生作品必须包含该通知文本文件的可读副本,可以是文档或显示在软件中。
声明文件的内容不会修改许可证,因为它们仅用于提供信息,并且可以在许可证文本中添加更多属性声明,前提是这些声明不能被理解为修改许可证。修改可能有适当的著作权声明,并可能为修改提供不同的许可条款。
七、许可证的对比与总结:
对于一个开源协议来说,规定得太宽松,会导致作者丧失对开源软件的很多权利,规定的太严格,又不利于开源软件的使用和传播。用一张图总结以上介绍的几个主流开源许可证的权限宽松情况:
我们在选择使用开源软件、或者准备开源自己的软件时,一定要明白自己的用途,选择合适的许可证。希望我们站在巨人肩膀上前行的同时,不忘用法律的武器来为我们自身保驾护航。
pythonçå ç§å¼åå·¥å ·ä»ç»
1 IDLE
1.1 IDLEæ¯pythonåå人Guido van Rossum使ç¨python and Tkinteræ¥å建çä¸ä¸ªéæå¼åç¯å¢ãè¦ä½¿ç¨IDLEå¿ é¡»å®è£ python and Tkinterã
1.2 ç¹æ§ï¼èªå¨ç¼©è¿ï¼å½©è²ç¼ç ï¼å½ä»¤åå²(Alt+p,Alt+n)ååè¯èªå¨(Alt+/)å®æã
1.3 ç¨IDLEæ§è¡Tkinterç¨åºï¼ä¸è¦å¨ç¨åºä¸å æ¬mainloopãIDLEæ¬èº«å°±æ¯Tkinteråºç¨ç¨åºï¼å®ä¼èªå¨è°ç¨mainloopãåè°ç¨ä¸æ¬¡mainloopä¼ä¸IDLEçäºä»¶å¾ªç¯å²çªï¼é æè¿è¡æ¶é误ã
2 BlackAdder
2.1 BlackAdderæ¯æwindows and linuxç¯å¢ãç¨å®å建çç¨åºå¯å¨ä»»ä½ä¸ç§å¹³å°ä¸è¿è¡ï¼è´è´£ç»´æ¤å®çæ¯TheKompany.comãä»ä»¬åå¸äºè¯¥è½¯ä»¶ç个人ç ï¼åªæä¾æéçæ¯æï¼ä»¥åä¸ä¸çï¼éè¦è®¸å¯ï¼é¢ååä¸è½¯ä»¶å¼åè ã详æ 请访é®www.thekompany.com/products/blackadderã
3 PythonWorks
3.1 å®ç±SecretLabså ¬å¸åå¸ï¼è¯¥å ¬å¸è´åäºPython项ç®çå¼åä¸é¨ç½²æä¾ç¸åºçå·¥å ·ãPythonWorksæ¯ä¸ç§âå¿«éåºç¨ç¨åºå¼åâï¼RADï¼å·¥å ·ï¼ç¨åºåå¯åå©å®å¿«éå°å建ãè°è¯ååå¸ç¨åºã
3.2 PythonWorkså æ¬ä¸ä¸ªHTML/XMLç¼è¾å¨ãå ·æå®å ¨ç´¢å¼çææ¡£ãä¸ä¸ªæºç 管çç³»ç»ï¼ç¨äºé¡¹ç®åç»ï¼ãèªå®ä¹ç代ç ç¼è¾ç¹æ§ä»¥åä¸ä¸ªGUIå¸å±ç¼è¾å¨ãæ¯æjythonã
3.3 å 许ç¨æ·ä»¥å¤ç§å½¢å¼å¯¹é¡¹ç®è¿è¡æå ï¼æºç å½¢å¼ãå¯æ§è¡ç¨åºå½¢å¼ä»¥å.pycå½¢å¼ã
3.4 æçæï¼éè´ä¹°ï¼è¯¦æ 请访é®www.pythonware.com/products/works/index.htm
4 Wing IDE
4.1 Wing IDEç±Archaeopteryx Softwareå ¬å¸å¼åä¸æ¯æï¼éç¨äºwindows and linuxç¯å¢ãå®æä¾ä¸ä¸ªæºç åæå¨åæµè§å¨ã项ç®ç®¡çè½å以åææ¬ç¼è¾å¨åè°è¯å¨ã
4.2 å®ç±pythonç¼åï¼å¹¶å å«pythonæºç ãè´ä¹°è å¯èªå®ä¹æºç ï¼ä»¥éåºèªå·²çè¦æ±ï¼ä½æ¯ï¼ä¸å¯å°ä¿®æ¹è¿ç代ç ç¨äºèµ¢å©ç®çã
4.3 å ¨åè½æ¼ç¤ºçå¯å¨archaeopteryx.com/wingideä¸è½½ã
5 Pythonwin
5.1 Pythonwinéæå¼åç¯å¢å å«å¨ç±ActiveStateåºåçActivePythonä¸ï¼ActivePythonæ¯ä¸ä¸ªäºè¿å¶buildãå ¶ä¸å æ¬ç¨äºXMLå¤ççexpat模åï¼ä»¥åä¸ç³»åwindowså·¥å ·ã
5.2 æä¾çç¹æ§æï¼å½©è²ç¼ç ãæºä»£ç æå ãåè¯å®æåèªå¨ç¼©è¿ãè°è¯å¨æ¯æäºåè¯æåè½ãæ åçåæ¥è°è¯ãæç¹è®¾è®¡ååéçè§ã
5.3 详æ 请访é®aspn.activestate.com/activepythonã
6 Komodo
6.1 ActiveStateè¿ä¸ºpythonæä¾äºå¦ä¸ä¸ªIDEï¼å为Komodoï¼å¯ç¨å®å¨windows and linuxä¸å¼åç¨åºãKomodoæ大çç¹ç¹æ¯ï¼å®æ¯Perl,PHP,Tcl,HTML,XML AND XSLTçä¸ç§éæå¼åç¯å¢ã
7 Boa Constructor
7.1 Boaæ¯ä¸ä¸ªè·¨å¹³å°çpython IDEåWxPython GUIãå®æä¾å¯è§åçç¼ç¨åæä½æ¡æ¶ï¼è½æ¹ä¾¿å°è¿è¡ç¨åºç设计ãå®æä¸ä¸ªå¯¹è±¡æµè§å¨ï¼å¹¶æä¾æåç§èµæºçè§å¾ï¼æä¸ä¸ªhtmlææ¡£çæå¨ï¼è¿æä¸ä¸ªå è¿ çè°è¯å¨åå®æ´ç帮å©ç³»ç»ãBoaè¿æä¾å¯¹zopeçæ¯æï¼è½æ·»å ãå é¤ãå¤å¶ãåªåãå¯¼å ¥å导åºzopeä¸ç对象ãè½ç¼è¾å¯¹è±¡å±æ§åè¿è¡pythonè æ¬çè°è¯ãBoaæ¯ç¨pythonåºäºWxPythonåºç¼åçã ç¨èµ·æ¥å°±è±¡vbædelphiä¸æ ·æ¹ä¾¿ã
7.2 ä¸è½½å°åæ¯ï¼)
åæé¾æ¥ï¼http://www.linuxsir.org/bbs/showthread.php?t=
OpenBSD 7.3 发布,包含新功能和更新 | Linux 中国
OpenBSD 7.3 正式发布,包含多项软件更新和改进。
OpenBSD 7.3 是该系统第 个版本,安全可靠,过去 年仅发现 2 个远程漏洞。新版本在内核、渲染管理器、图形驱动、网络硬件等多个领域有所提升。
内核改进包括增加 waitid(2)、pinsyscall(2)、getthrname(2)、setthrname(2) 函数,以及 waitid(2) 的 WTRAPPED 选项。新内核 autoconf_serial sysctl(8) 允许用户监控内核设备树状态变化。
Direct Rendering Manager 和图形驱动更新,支持新处理器和显卡,解决苹果芯片笔记本电脑和联想 xs 的问题。网络硬件支持增强,em(4) IPv4、TCP 和 UDP 校验卸载,、、i 和 i 芯片组设备的硬件 VLAN 标记。
OpenBSD 7.3 包括硬件和软件端口源码包(Port) 和 二进制软件包(Package) 的更新。关键组件包括 Xenocara、LLVM/Clang、GCC、Perl、NSD、Unbound、Ncurses、Binutils、Gdb、Awk 和 Expat。
OpenBSD 7.3 继续提供安全可靠的操作系统,系统领域显著改进,包括内核、Direct Rendering Manager、图形驱动、网络硬件等。新版本包含全面发布说明,介绍所有新功能和改进。
OpenBSD 7.3 可从官方网站下载,支持最新功能和改进。
MIT许可证运用情形
MIT许可证被广泛采用,许多知名软件都以此授权。例如,PuTTY和X Windows System(X)作为著名的ssh连接软件和图形界面系统,都采用了MIT许可证。Expat、Mono开发平台库、Ruby on Rails和Lua 5.0及之后版本也都应用了MIT授权条款。 MIT许可证允许软件使用者自由复制、修改和分发源代码,只要保留原有的版权声明和许可条款。这意味着开发者可以将MIT授权软件整合到自己的项目中,无需担心版权问题。此外,MIT许可证还鼓励代码共享和创新,因为它允许开发者在遵守原许可条款的前提下,自由地修改代码并进行商业用途。 在使用MIT许可证的软件中,开发者通常会包括版权声明和许可条款,以明确告知用户代码的使用方式。这些条款通常包含许可的范围、责任免除等内容,以保护开发者免受法律纠纷的困扰。 许多开源项目选择MIT许可证作为其授权条款,因为它提供了一个相对宽松的框架,既保护了开发者的工作成果,又鼓励了开源社区的协作和创新。通过使用MIT许可证,开发者可以在不影响自身利益的情况下,与他人共享代码,共同推动技术进步。 综上所述,MIT许可证因其简单明了的条款和对开源社区的积极作用,在软件开发领域被广泛应用。众多知名软件通过选择MIT许可证作为其授权方式,不仅促进了代码共享与创新,也确保了开发者的工作成果得到尊重与保护。扩展资料
MIT许可证(The MIT License)是许多软件授权条款中,被广泛使用的其中一种。与其他常见的软件授权条款(如GPL、LPGL、BSD)相比,MIT是相对宽松的软件授权条款。