From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Vlasov To: devel@linux.iplabs.ru Subject: Re: [devel] Addenda to /etc/profile.d Message-Id: <20010601225318.6a2c29f3.vsu@mivlgu.murom.ru> In-Reply-To: <20010601031906.C4558@boids.avilink.net> References: <20010601031906.C4558@boids.avilink.net> X-Mailer: Sylpheed version 0.4.99claws2 (GTK+ 1.2.9; i586-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit Sender: devel-admin@linux.iplabs.ru Errors-To: devel-admin@linux.iplabs.ru X-BeenThere: devel@linux.iplabs.ru X-Mailman-Version: 2.0 Precedence: bulk Reply-To: devel@linux.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: IPLabs Linux Team Developers mailing list List-Unsubscribe: , List-Archive: X-Original-Date: Fri, 1 Jun 2001 22:53:18 +0400 Date: Fri, 1 Jun 2001 22:53:18 +0400 Archived-At: List-Archive: List-Post: On Fri, 1 Jun 2001 03:19:07 +0300 Alexander Bokovoy wrote: > Подумалось тут, а не добавить ли следующие BASH-ориентированные функции > в > /etc/profile.d: > 1. В /etc/profile.d/cvs.sh можно было бы добавить функции для быстрого > доступа в уже имеющиеся на диске репозитарии: > > # Обновление репозитария > # Использование: cvsgetx имя_репозитария (в текущем каталоге) > function cvsgetx { > cvs -d `cat $1/CVS/Root ` -z6 get $@ > } > > # Обновление из конкретной ветки репозитария > # Использование: cvsbranch НАЗВАНИЕ_ВЕТКИ имя_репозитария > function cvsbranch { > cvs -d `cat $2/CVS/Root ` -z6 get -r $@ > } Т.е. в Вашем варианте я должен написать для обновления "cvsgetx some_name". Не проще ли зайти в этот каталог и запустить "cvs -z6 update -d" (вот на это как раз можно поставить алиас)? Во втором случае не требуется добавлять имя в командную строку. Хотя могу себе представить один случай, когда это может оказаться полезным - при удалении рабочего каталога оставить CVS/, чтобы можно было потом при необходимости снова взять копию из CVS воспользоваться этими функциями. > # Отправка данных в репозитарий > # Использование: cvscommit > function cvscommit { > cvs -d `cat ./CVS/Root ` -z6 commit > } Зачем такие сложности - cvs commit сам возьмет CVSROOT как раз из ./CVS/Root. Явно указывать CVSROOT нужно только для login и checkout. Разве что ради -z6 - но это можно просто записать в ~/.cvsrc (или опять же добавить алиас). > Удобство этих функций в том, что не надо устанавливать CVSROOT и помнить > его для разных репозитариев. CVS это и так умеет. > 2. Добавить /etc/profile.d/bugreport.sh: > > # Выдать список пакетов, от которых зависит требуемый пакет > # Использование: pkgdepend имя_пакета > function pkgdepend() { > DATA= > for i in `rpm -q --requires $1|cut -d ' ' -f 1` ; do > DATA="$DATA `rpm -q --whatprovides $i`" > done > echo $DATA | tr ' ' '\n' | sort -u | uniq -u > } Вот тут согласен. _______________________________________________ Devel mailing list Devel@linux.iplabs.ru http://www.logic.ru/mailman/listinfo/devel